Announcement

Collapse
No announcement yet.

Vray DR not reading maps in nodes. Help please.

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Vray DR not reading maps in nodes. Help please.

    I dont know why DR dont read the maps on the nodes it only see them from the workstation. When i use BB everything is ok, i dont have that problem. Im using 1 workstation (win 64bits) one file server (win 2003 filserver) and 2nodes (win 64bits). Anybody with the same problem?. Any solution?

    Regards

    Onz

  • #2
    make sure all your textures are accessed from a network location. Make sure you dont use mapped network drives.
    I.e. texture path cant be something like:
    x:\dir\texture.ext

    the proper path has to be
    \\server\dir\texture.ext
    Dmitry Vinnik
    Silhouette Images Inc.
    ShowReel:
    https://www.youtube.com/watch?v=qxSJlvSwAhA
    https://www.linkedin.com/in/dmitry-v...-identity-name

    Comment


    • #3
      im not useing a maped drive. im using the second one.

      what could be?

      Comment


      • #4
        it happen once for us it was the Vray properties of the object , Generate GI and Receive GI was modified and was not 1.0 so maps dont render in the spawner.
        try this Generate GI and Receive GI to default settings 1.0

        Comment


        • #5
          We also had some problems, it was due to some of our map files were on a linux fileserver. After switching those textures to our win2k3 server, it all render ok (our linux server is abit old and slow).

          P.S. Using a DFS (distributed file system) also help abit the reduce the unc path mess in general.

          Best regards,
          Daniel
          4+Arquitectos, Lda
          Daniel Santana | Co-Founder / Technical Director
          You can do it! VFX
          Lisbon/Porto - Portugal
          http://www.ycdivfx.com

          Comment


          • #6
            IM IN MAX 9 64BITS AND VRAY 1.5RC. THAT COULD BE?

            Comment


            • #7
              May be, i'm also on max9pb1rev3 x64 and x86, vray 1.5rc on winxp 64sp2. So it could be. It happens also some times on our render nodes since they sometimes get mixed and use the old server. I do have a script to correct all the paths to the new ones even vrayproxies. If you want i can post it.

              Best regards,
              Daniel
              Daniel Santana | Co-Founder / Technical Director
              You can do it! VFX
              Lisbon/Porto - Portugal
              http://www.ycdivfx.com

              Comment


              • #8
                THAT WOULD BE AWSOM DANIEL.

                MY MAIL IS gonzalogrillo@gmail.com

                thx a lot!

                Comment


                • #9
                  Ok here is the code, i post here maybe more also needed it.

                  Code:
                  (
                  	global QArqPathCorrector
                  	fn tokenString str token =
                  	(
                  		idx = 0;start = 1;end = 0;strings = #()
                  		while (idx != undefined) do
                  		(
                  			idx = findString str token
                  			if idx == undefined then
                  			(	
                  				append strings str;continue
                  			)
                  			end = idx-1;newStr = subString str start end
                  			if newStr.count > 0 then
                  				append strings newStr
                  			str = replace str start (end+token.count) ""
                  		)
                  		strings
                  	)
                  	
                  	fn replaceString str replaceStr withStr =
                  	(
                  		theStr = " " + str;splitNames = tokenString  theStr replaceStr
                  		newStr = str
                  		if (splitNames.count >= 1) then
                  		(
                  			newStr = ""
                  			for s = 1 to splitNames.count do
                  			(
                  				newStr += splitNames[s]
                  				if s != splitNames.count then newStr += withStr
                  			)
                  			newStr = replace newStr 1 1 ""
                  		)	
                  		newStr
                  	)
                  	
                  	struct QArqPathCorrector
                  	(
                  		fn correct old_path =
                  		(
                  			-- Old paths
                  			a1 = #("o:\\","x:\\","m:\\","p:\\","t:\\","\\\\4arq-server01\\","\\\\4arq-server02\\","\\\\4arq-00\\textures\\")
                  			-- New path parts for dfs system
                  			a2 = #("arquitectura\\","library\\","modelos\\","projectos\\","textures\\","","","textures\\")
                  			-- dfs root
                  			r1 = "\\\\intranet.4arq.net\\storage\\"
                  			new_path = old_path
                  			/* e.g:
                  				before (o:\stone\rock1.jpg)
                  				after (\\intranet.4arq.net\storage\arquitectura\rock1.jpg)
                  			*/
                  			if (findstring new_path "\\\\intranet.4arq.net\\") != undefined then return new_path
                  			for f=1 to a1.count do
                  			(
                  				new_path = replaceString old_path a1[f] (r1+a2[f])
                  				if new_path != old_path then exit
                  			)
                  			new_path
                  		),
                  		fn process =
                  		(
                  			format "Intranet Path Corrector v 0.1\n"
                  			format "2007 © Daniel Santana\n\n"
                  			bitm = getclassinstances bitmaptex
                  			format "Found % \tBitmaps\n" (bitm.count)
                  			proxies = getclassinstances vrayproxy
                  			format "Found % \tVrayProxies\n" (proxies.count)
                  			ies_lights = getclassinstances Free_Area
                  			join ies_lights (getclassinstances Free_Linear)
                  			join ies_lights (getclassinstances Free_Point)
                  			join ies_lights (getclassinstances Target_Area)
                  			join ies_lights (getclassinstances Target_Linear)
                  			join ies_lights (getclassinstances Target_Point)
                  			format "Found % \tIES lights\n" (ies_lights.count)
                  			arr1 = #()
                  			join arr1 bitm
                  			join arr1 proxies
                  			join arr1 ies_lights
                  			format "Processing paths...\n"
                  			c = 0
                  			for i in arr1 do
                  			(
                  				if superclassof i != Light then
                  					old_path = (dotnetobject "System.String" (i.filename)).tolower()
                  				else
                  					old_path = (dotnetobject "System.String" (i.webfile)).tolower()
                  				
                  				if old_path != "" then
                  				(
                  					new_path = QArqPathCorrector.correct old_path
                  					if old_path != new_path then
                  					(
                  						if superclassof i != Light then
                  							i.filename = new_path
                  						else
                  							i.webfile = new_path
                  						format "(%) new filename = %\n" (classof i) (new_path)
                  						c+=1
                  					)
                  				)
                  			)
                  			format "% of % required path changes.\n" c (arr1.count)
                  			format "All done...\n"
                  		)
                  	)
                  	
                  	PathCorrector = QArqPathCorrector()
                  	PathCorrector.process()
                  )
                  Daniel Santana | Co-Founder / Technical Director
                  You can do it! VFX
                  Lisbon/Porto - Portugal
                  http://www.ycdivfx.com

                  Comment


                  • #10
                    Daniel thx,

                    could u explain a litle how it works , Im not familiar with scripts.

                    I just copy paste that in the script listner? and then what?

                    sorry for being so pain in the ass

                    thx

                    Comment


                    • #11
                      You will have to adapt the a1, a2 and r1.
                      -- a1, if the old paths root, let's say you had the textures in an mapped drive t:, you would put:
                      Code:
                      a1=#("t:")
                      -- a2, this is the new path, let's say your new texture path is "\\someserver\tex", you would put:
                      Code:
                      a2=#("\\\\someserver\\tex")
                      -- r1 just set it to "", since this is when you use dfs and for simplicity.

                      After that just copy into a empty script and press evaluate.

                      p.s.: for each path you set in a1 there must be an entry in a2.

                      Best regards,
                      Daniel[/code]
                      Daniel Santana | Co-Founder / Technical Director
                      You can do it! VFX
                      Lisbon/Porto - Portugal
                      http://www.ycdivfx.com

                      Comment


                      • #12
                        perfect!!

                        I got it!

                        Thank you very much!

                        Comment

                        Working...
                        X