EDIT: The post below is now redundant, since the OctaneRender for Modo plugin automatically support camera projection texture locator.
I was asked it was possible to setup camera projection textures in OctaneRender for Modo. The answer is "Yes", although at the moment it requires some manual processing. To set this up, add an Octane Override for the Modo material and then open the Viewport.
Then:
1) Add an Octane Perspective Projection node and connect it to the Projection pin of the Octane RGB Image node
2) Select the Octane Transform Value connected to the new Octane Perspective Projection node, and manual enter the current Render Camera transform values. You should notice the texture is now projected according to the current camera position in the OctaneRender Viewport
3) Add an Octane 3D Transform node and connect it to the Transform pin of the Octane RGB Image node.
4) Select the Octane Float Value connected to the Scale pin of the new Octane 3D Transform. Click the Gang edit control until it is set to "=", and then slide one of the value to get the texture size you need. You can also adjust the Translation to adjust the position of the projected texture.
I plan on semi-automated the above where possible in the next release. In particular, adding the ability to connect the Modo camera transform node to the Octane Transform node would be great.
News and technical details for PoserPhysics and the ArchiCAD, AutoCAD, Modo, Nuke, Poser, Revit, Rhino and DAZStudio Octane plugins.
Friday, 12 December 2014
Wim's OctaneRender for Poser Tips
Wim van de Bospoort sent through some excellent OctaneRender for Poser tips, which follow:
LiveDB Texturemap Folder
This is the location where the plugin stores texture maps when a material is loaded from LiveDB. The default is located in the Poser Temp folder.
I suggest to change that to a special folder in Posers Runtime. (I use runtime:textures:Octane). The reason for this is that the contents of your temp folder may get lost (if you clear the temp folder or if you move to a new machine). Your Poser scene files will then no longer be able to find these textures and you have to load the same material again from LiveDB. If the folder is located in the poser runtime they will be moved with the machine and included in the regular backups.
Poser Smoothing vs Octane Smoothing
Some materials of flat surfaces do not smooth very well in Octane. If this happens you can turn off the smoothing for that material which should no matter since it is a flat surface. There is another way however to prevent this problem and that is to use Octane smoothing. You can do that by setting the smoothing Angle in the setup window to 80 and reconvert the material. The Octane smoothing works very well and you can modify the angle to smooth in the setup window. The flat surfaces will now work fine without modification. In some cases however there is a seam problem with gen4 figures. If this happens you can set the figure to Unimesh and the problem will disappear.
Octane and Poser smoothing are mutually exclusive - so for the entire scene. To go back to Poser smoothing, set the angle back to 0.
Fast way to duplicate octane material settings of an entire scene
Suppose you have two or more scenes already built and you changed the materials of all the props and figures in that scene and you now want to have the same materials in the other scenes, of course you can save the materials as poc files – one by one. But there is a faster way – not really a feature but a discovery. What you do is to load the first scene with the materials, then open the plugin. Now close the plugin again and load the next scene – without restarting poser – and start the plugin again. Now you will find that all the materials of the first scene have been applied to second scene as well. Not only for props, but also for figure. In case you need the same emitters in the scene, create those before you start the plugin and the previous settings will be applied as well. A real time saver.
HDR Light Studio and Interiors
If you want to use HDRLS with interiors use the following trick. Set all the non camera facing walls, ceiling and floors as well as other light blocking features to “Shadow Visibility” None. That way the structure still reflects but does not block the HDRI lights. Use the other Poser cameras as well to position the HDRI lights. The HDRI light do work well together with Daylight and light emitters.
Thursday, 11 December 2014
Surface Edge Rendering with Octane
Bendbox (from the Otoy forums) has provided a novel way to highlight surface edges for illustrative purposes when rendering with Octane. Below shows the material which does this, which is based around a Mix Material with 2 Dirt nodes attached to the inputs.
Friday, 5 December 2014
X.IO
VentureBeat have put out a great interview with Jules Urbach (Chief Executive of Otoy) about the release of the X.IO service. Have a read at Otoy takes 3D graphics and virtual reality app development into the cloud.
Thursday, 4 December 2014
Software Switching GPU Connections to Monitors
Many thanks to Paul King from www.prime.net.nz for the following blog entry.
Any red blooded Octane user would struggle to
overlook the fact that with a multi-Nvidia GPU setup, they have a fairly
decent SLI gaming rig on their hands.
The
problem is that Octane performs best when all Nvidia GPUs are allocated
exclusively to Octane, with the mundane task of driving monitors
delegated to the generic GPU most motherboards have built in.
Should
the need to smite a few bad guys in Battlefield 12 become pressing, an
Octane user is faced with crawling around behind the computer,
disconnecting monitors from the motherboard ports and connecting them to
their Nvidia card ports. And of course putting them back again
afterwards.
Most
monitors have a few port types available, as do the GPUs, and by using
two of these at once it is nominally possible to leave both motherboard
and NVidia GPUS connected to the same monitor even for multiple monitor
setups. The Windows
display manager often struggles with this arrangement however; going
into paroxysms as it keeps detecting and attempting to start unused
connections, particularly while the user is attempting to switch
multiple monitors one by one from one GPU type to the other, or to a
hybrid combination of both. The only sure way to succeed involves
physically disconnecting the cables from ports that are to be switched
off.
A windows app called Display Fusion (www.displayfusion.com)
however solves this problem by use of stored profiles that can switch
multiple monitors simultaneously from one combination of inputs to
another – eliminating the flaky process of sequential manual switching
via Display Manager. Users can thus leave the cables in place
connecting all GPUs to all monitors at the same time.
Users
can also set up application specific display profile settings
(triggered when app is launched) and manage a range of other display
related tasks. There is a free version and a more fully featured paid
version ($US25).
NOTE
1: If you happen to ever use a hybrid of motherboard GPU and Nvidia
cards simultaneously to drive a multi monitor setup, this won’t work
well while Octane is active. It is important to ensure that BEFORE Octane becomes active there
is no active connection between any Nvidia Card and ANY of the monitors
(whether achieved by physically disconnecting , or deactivating connections via monitor profile switching).
Consequences otherwise are that long freezes
and lags will occur while NVidia Cards are set as prioritised to Octane
- even if the monitor in use by the ArchiCAD/Octane application window
is being driven by the motherboard GPU and not an Nvidia card;
when windows desktop is extended to span across monitors , the whole
user interface system then has to wait for the already busy Nvidia card to complete every refresh of those parts of the user interface occurring on it’s monitor (desktop display, mouse pointer etc.).
Clearing all OctaneRender for Poser data
Following on from Accessing Octane plugin data from python in Poser, below shows how to delete all Octane data from your Poser scene.
1) Open a Python Shell in Poser (Scripts->Python Shell)
2) Enter the following commands
3) Save the Poser scene (all previous Octane data will be cleared)
1) Open a Python Shell in Poser (Scripts->Python Shell)
2) Enter the following commands
octanePlugin = __import__("OctaneRender for Poser")
octanePlugin.Globals.m_SavedTreeInfo = {}
octanePlugin.MaterialManager.m_SceneNode = None
3) Save the Poser scene (all previous Octane data will be cleared)
Tuesday, 2 December 2014
Tuesday, 25 November 2014
Animation - Upgrading Shopping Centre HEUVEL Eindhoven
Below is a video produced by Jeroen Tapper from Tapperworks, and was done using the OctaneRender for ArchiCAD plugin. The
original duration of the video is 7:21 minutes and is
reduced by 'fast forwarding' the main part and deleting a few scenes at the
end. The goal is not a photorealistic impression, but to give insight of the building upgrade sequence in an artistic way.
More of Jeroen's video's are available at https://www.youtube.com/user/Tapperworks/videos
More of Jeroen's video's are available at https://www.youtube.com/user/Tapperworks/videos
Tuesday, 18 November 2014
Accessing Octane plugin data from python in Poser
The OctaneRender for Poser plugin is largely implemented in python. You can write your own python code to tweak Octane settings using the following approach. Use the following information at your own risk! Remember to make a backup of your Poser scene prior to running python code which directly interacts with the plugin.
Loading the plugin in a PythonShell
Load the plugin via the following python code:
Loading the plugin in a PythonShell
Load the plugin via the following python code:
octanePlugin = __import__("OctaneRender for Poser")Octane Data
The Octane scene data is stored in:
octanePlugin.Globals.m_SavedTreeInfo
Do not modify the above variable if the plugin Setup window is open. If the above variable is {}, then the plugin has not yet been run for the current scene. After running the plugin, querying octanePlugin.Globals.m_SavedTreeInfo will return a large python dictionary.
To access a rendertarget setting (for example the Maxsamples settings in the kernel), use the following python code:
octanePlugin.Globals.m_SavedTreeInfo['rendertarget']['kernel']['maxsamples']['value']
You can change the Maxsamples with:
octanePlugin.Globals.m_SavedTreeInfo['rendertarget']['kernel']['maxsamples']['value'] = 100Remember, only modify values if the setup window is closed.
OctaneCommands
Close the Viewport
octanePlugin.UiManager.GetViewportForm().CloseWindow()Close the Setup Window
octanePlugin.UiManager.GetSetupForm().CloseWindow()
Changing the Octane background image each frame in Modo
The OctaneRender for Modo plugin does not support animated backgrounds (since the background is not saved by Octane in the png when the Viewport is saved). However there may be situations where you still want to see the background image change when you change frames on the Modo timeline. The following LUA script will do this.
1) Copy and paste the following code into AnimateBackground.lua (save it somewhere on your filesystem)
2) Each time you move the Modo frame slider, run the above script (via Modo -> System -> Run Script -> AnimateBackground.lua). For frame 0 it will load MyBackgroundImage_0000.jpg. For frame 1, MyBackgroundImage_0001.jpg, etc. You may need to adjust the code to select the correct file.
You can also run the script from the Modo command panel via the following command:
1) Copy and paste the following code into AnimateBackground.lua (save it somewhere on your filesystem)
-- lua
fps = lxeval( "time.fpsCustom ?" )
frametime = lxeval( "select.time ?" )
ok = lx( "octane.selectKernel" )
local str = string.format("c:\\MyDocuments\\MyBackgroundImage_%04i.jpg", frametime[1] * fps[1]);
ok = lx( "item.channel oc_backgroundImageFilename {".. str .."}" )
2) Each time you move the Modo frame slider, run the above script (via Modo -> System -> Run Script -> AnimateBackground.lua). For frame 0 it will load MyBackgroundImage_0000.jpg. For frame 1, MyBackgroundImage_0001.jpg, etc. You may need to adjust the code to select the correct file.
You can also run the script from the Modo command panel via the following command:
@{c:\PathToTheLuaScript\AnimateBackground.lua}You could also use python code instead of LUA to achieve the same result.
Monday, 17 November 2014
Randomizing Family Instances in Revit
The OctaneRender for Revit plugin will apply all instances of a Family Instance with the currently select proxy. However if you want to randomize the rotation of the Instances, how can this be done? One method is to use a small python script. This is done as follows:
1) Download and install Python (for your Revit version) and Vasari from https://code.google.com/p/revitpythonshell/
2) Start Revit, load the scene with the Family Instances you want to randomize
3) Select an instance of the Family Instance you want to randomize
3) In the AddIn tab, click the new Interactive Python Shell button
4) Copy and paste the following code into the lower window
5) Click the Run button in the lower window toolbar
All the instances should now be randomly rotated between 0 and 360 degrees. You can modify the above code to limit the random rotate, etc.
1) Download and install Python (for your Revit version) and Vasari from https://code.google.com/p/revitpythonshell/
2) Start Revit, load the scene with the Family Instances you want to randomize
3) Select an instance of the Family Instance you want to randomize
3) In the AddIn tab, click the new Interactive Python Shell button
4) Copy and paste the following code into the lower window
import clr
import System
clr.AddReference('RevitAPI')
clr.AddReference('RevitAPIUI')
from Autodesk.Revit.DB import *
app = __revit__.Application
doc = __revit__.ActiveUIDocument.Document
transaction = Transaction(doc, 'Randomize family instance rotation')
transaction.Start()
seed = 215
rand = System.Random(seed)
# Get the current selection
selection = __revit__.ActiveUIDocument.Selection.Elements
if selection.Size != 1:
print "A single family instance must be selected"
else:
for item in selection:
currentElement = item
print "Current Selection = " + currentElement.Name
collector = FilteredElementCollector(doc)
collector.OfClass(FamilyInstance)
famtypeitr = collector.GetElementIdIterator()
famtypeitr.Reset()
count = 0
for item in famtypeitr:
famtypeID = item
faminst = doc.GetElement(famtypeID)
if faminst.Name == currentElement.Name:
# Setup the rotation axis
p1 = faminst.Location.Point;
p2 = XYZ(p1.X, p1.Y, p1.Z + 10);
rotationAxis = app.Create.NewLine(p1, p2, True)
# Apply a random rotation
faminst.Location.Rotate(rotationAxis, rand.Next(0, 360) * 180 / 3.14159);
count += 1
print "Randomised " + str(count) + " family instances of " + currentElement.Name
transaction.Commit()
5) Click the Run button in the lower window toolbar
All the instances should now be randomly rotated between 0 and 360 degrees. You can modify the above code to limit the random rotate, etc.
Friday, 14 November 2014
Octane Notes
Following is general info on Octane for my Octane plugins and Octane Standalone, which may not be provided in the Octane manuals, but which will hopefully help people with the more common issues encountered. If you have an questions - pls post of the Otoy Forums (http://render.otoy.com/forum).
Pls see http://poserphysics.blogspot.com.au/2016/03/installing-nvidia-drivers-on-linux.html for installing Nvidia drivers in Linux.
Octane will not run, or you are getting cuda errors:
1) Reboot and try again
2) Check the Octane Log (in the plugin or Octane Standalone)
3) If a 3d app Octane plugin will not run, check to make sure Octane Standalone renders. If it DOES, it may be another plugin which is interferring with Octane. In this case, disable all plugins other than the Octane plugin and see if it works.
4) Cuda error 999's are generally a driver or hardware problem. Under-clocking your card may resolve this issue if it is a hardware fault.
5) If getting cuda errors part way through a render or animation, your card may be overheating. Use GPU-Z to check.
6) If the Viewport is black, check to ensure at less one Cuda device is selected in the Cuda Devices panel of the plugin/Standalone.
7) You will get a cuda error if you have exceeded the triangle limit of Octane. The current triangle limit is 19.6 million (if you have no motion blur, hair strand data or displacement). If your scene has quads, each quad will result in 2 Octane triangles. Octane 3 will remove the triangle limit.
Noise-Free Renders
1) Reduce Imager->Hot Pixel (to remove fireflys)
2) Increase Kernel->Caustic Blur (to smooth out Specular and Glossy material highlight noise)
3) Use the Emitters tips below
4) Reduce Kernel->GI Clamp (Try 1. Otoy recommend a GI Clamp of ~10-100x the inverse of the exposure)
5) If you have noise in dark areas this may be due to paths being terminated early, so reduce Kernel->Path Termination Power (thank Marcus for this one)
5) If the light illuminating the scene has come through a specular (glass) material, using “pmc” rather than “pathtracing”. In this situation you can also reduce “kernel”->”direct_light_importance” to give the light that has passed through the glass more priority. Also, you can let more direct light through the glass by reducing the glass material’s opacity (from 1 to say 0.2).
Emitters
1) Use low-polygon emitters if possible (a single polygon plane is best)
2) For IES emitters, load the IES file into a Greyscale Image node connected to the Distribution pin of the Emission node.
3) If using an IES distribution with a Spherical projection in Normal coordinate space, you will get light emitting from each polygon in the mesh in the direction of the normals
4) If geometry is connected to an Octane Placement or Scatter node, the emission power will be adjusted by the Placement/Scatter scale.
Auto-focus
1) When Auto-focus is enabled, thefocus distance is determined from the camera to the geometry at the very middle of the render. If there is no geometry in the middle of the render, the focus distance may be invalid, and the render will be out of focus.
Displacement Mapping
1) If using a Displacement map, remove any Bump or Normal maps.
2) If you use a Displacement "Amount" of 0, the object will not render
3) Octane assumes black pixels in the displacement map have 0 displacement. If using a displacement map where 0 is a negative displacement (for example, a map generated from ZBrush), put a "Shift" of negative half the "Amount" (ie. if the Amount is 0.01, the Shift will be -0.005)
4) Large polygons with displacement will render artifacts if the displacement Amount is small.
5) Displacement mapping requires UV Projection surfaces. It requires a displacement texturemap, and procedural textures and Octane nodes which modify the displacement texturemap will be ignored. Similarly, the Displacement Texture Greyscale Image "Power", "Gamma" and "Invert" pins are ignored
6) Very large displacement "Amount" values may position vertices in an invalid position which may crash Octane. So start with small (0.001) Amount values and increase from there.
7) Displacement will only work on surfaces which have been UV mapped (and have UV coordinates)
8) The Power, Gamma, Invert and Border Mode of the Image node used as the Displacement Texture will be ignored when determining the displaced surface
Round Edges
1) Round Edges require that the edge between the two surfaces has shared vertices.
2) Round edges should only be used for very small amounts of rounding. For large round edges, use geometry.
Pls see http://poserphysics.blogspot.com.au/2016/03/installing-nvidia-drivers-on-linux.html for installing Nvidia drivers in Linux.
Octane will not run, or you are getting cuda errors:
1) Reboot and try again
2) Check the Octane Log (in the plugin or Octane Standalone)
3) If a 3d app Octane plugin will not run, check to make sure Octane Standalone renders. If it DOES, it may be another plugin which is interferring with Octane. In this case, disable all plugins other than the Octane plugin and see if it works.
4) Cuda error 999's are generally a driver or hardware problem. Under-clocking your card may resolve this issue if it is a hardware fault.
5) If getting cuda errors part way through a render or animation, your card may be overheating. Use GPU-Z to check.
6) If the Viewport is black, check to ensure at less one Cuda device is selected in the Cuda Devices panel of the plugin/Standalone.
7) You will get a cuda error if you have exceeded the triangle limit of Octane. The current triangle limit is 19.6 million (if you have no motion blur, hair strand data or displacement). If your scene has quads, each quad will result in 2 Octane triangles. Octane 3 will remove the triangle limit.
Noise-Free Renders
1) Reduce Imager->Hot Pixel (to remove fireflys)
2) Increase Kernel->Caustic Blur (to smooth out Specular and Glossy material highlight noise)
3) Use the Emitters tips below
4) Reduce Kernel->GI Clamp (Try 1. Otoy recommend a GI Clamp of ~10-100x the inverse of the exposure)
5) If you have noise in dark areas this may be due to paths being terminated early, so reduce Kernel->Path Termination Power (thank Marcus for this one)
5) If the light illuminating the scene has come through a specular (glass) material, using “pmc” rather than “pathtracing”. In this situation you can also reduce “kernel”->”direct_light_importance” to give the light that has passed through the glass more priority. Also, you can let more direct light through the glass by reducing the glass material’s opacity (from 1 to say 0.2).
Emitters
1) Use low-polygon emitters if possible (a single polygon plane is best)
2) For IES emitters, load the IES file into a Greyscale Image node connected to the Distribution pin of the Emission node.
3) If using an IES distribution with a Spherical projection in Normal coordinate space, you will get light emitting from each polygon in the mesh in the direction of the normals
4) If geometry is connected to an Octane Placement or Scatter node, the emission power will be adjusted by the Placement/Scatter scale.
Auto-focus
1) When Auto-focus is enabled, thefocus distance is determined from the camera to the geometry at the very middle of the render. If there is no geometry in the middle of the render, the focus distance may be invalid, and the render will be out of focus.
Displacement Mapping
1) If using a Displacement map, remove any Bump or Normal maps.
2) If you use a Displacement "Amount" of 0, the object will not render
3) Octane assumes black pixels in the displacement map have 0 displacement. If using a displacement map where 0 is a negative displacement (for example, a map generated from ZBrush), put a "Shift" of negative half the "Amount" (ie. if the Amount is 0.01, the Shift will be -0.005)
4) Large polygons with displacement will render artifacts if the displacement Amount is small.
5) Displacement mapping requires UV Projection surfaces. It requires a displacement texturemap, and procedural textures and Octane nodes which modify the displacement texturemap will be ignored. Similarly, the Displacement Texture Greyscale Image "Power", "Gamma" and "Invert" pins are ignored
6) Very large displacement "Amount" values may position vertices in an invalid position which may crash Octane. So start with small (0.001) Amount values and increase from there.
7) Displacement will only work on surfaces which have been UV mapped (and have UV coordinates)
8) The Power, Gamma, Invert and Border Mode of the Image node used as the Displacement Texture will be ignored when determining the displaced surface
Round Edges
1) Round Edges require that the edge between the two surfaces has shared vertices.
2) Round edges should only be used for very small amounts of rounding. For large round edges, use geometry.
Wednesday, 5 November 2014
Octane Render Passes
The following images show the render passes available from Octane 2.10. These were rendering in the Modo plugin, but are available from all the plugins, and Octane Standalone.
Beauty Passes (rendered in parallel to the normal beauty render)
Info Passes (rendered before, during or after the beauty pass - user controlled)
Saturday, 27 September 2014
Octane 2.10 Released
There has been an important update to Octane just released. The two exciting changes are:
1) Render pass output for lighting layers – this feature allows users to produce images for each render pass that constitutes an image such as reflections, refractions, normal, direct and indirect lighting, normals, material id, object id, SSS, wireframe, emitters, etc.
2) Speed increase - people are reporting an effective render speed increase of 30% and greater. This is achieved through some changes to the renderer, together with additional kernel controls.
The Poser, Modo, Rhino and Revit plugins have been updated and released to include the above changes. The ArchiCAD, AutoCAD and Inventor plugin will be updated shortly.
1) Render pass output for lighting layers – this feature allows users to produce images for each render pass that constitutes an image such as reflections, refractions, normal, direct and indirect lighting, normals, material id, object id, SSS, wireframe, emitters, etc.
2) Speed increase - people are reporting an effective render speed increase of 30% and greater. This is achieved through some changes to the renderer, together with additional kernel controls.
The Poser, Modo, Rhino and Revit plugins have been updated and released to include the above changes. The ArchiCAD, AutoCAD and Inventor plugin will be updated shortly.
Wednesday, 6 August 2014
Saturday, 2 August 2014
OctaneRender for Poser integration with HDR Light Studio
Integration of OctaneRender for Poser with HDR Light Studio.
HDR LightStudio integration with OctaneRender for Poser from Paul Kinnane on Vimeo.
Monday, 16 June 2014
OctaneRender of Mode Review
A blog posting with a quick review of OctaneRender for Modo can be read at http://www.sabertoothproductions.com/late-night-animator-blog/2014/6/13/octane-20-taken-for-a-spin.
Thursday, 12 June 2014
OctaneRender and Revit
Great article on how Gensler are using OctaneRender.
http://www.bdcnetwork.com/hyper-speed-rendering-how-gensler-turns-bim-models-beauty-shots-seconds
http://www.bdcnetwork.com/hyper-speed-rendering-how-gensler-turns-bim-models-beauty-shots-seconds
Monday, 9 June 2014
OctaneRender 2.0 has been released
The official announcement is at http://render.otoy.com/forum/viewtopic.php?f=7&t=40378.
The specifics for my plugins are available from:
AutoCAD - http://render.otoy.com/ manuals/AutoCAD/?page_id=661
Inventor - http://render.otoy.com/ manuals/Inventor/?page_id=563
Revit - http://render.otoy.com/ manuals/Revit/?page_id=536
ArchiCAD - http://render.otoy.com/ manuals/ArchiCAD/?page_id=353
Poser - http://render.otoy.com/ manuals/Poser/?page_id=287
Rhino - http://render.otoy.com/ manuals/Rhino/?page_id=650
Modo - http://render.otoy.com/ manuals/Modo/?page_id=977
The specifics for my plugins are available from:
AutoCAD - http://render.otoy.com/
Revit - http://render.otoy.com/
Poser - http://render.otoy.com/
Modo - http://render.otoy.com/
Thursday, 5 June 2014
Gnome Render
Absolutely amazing render done with OctaneRender for Modo, Modo and ZBrush.
http://community.thefoundry.co.uk/discussion/topic.aspx?f=8&t=89186
http://community.thefoundry.co.uk/discussion/topic.aspx?f=8&t=89186
Thursday, 6 March 2014
OctaneRender free for Students
Otoy have announced that OctaneRender Standalone can now be purchased at no cost by students. For full info, see http://render.otoy.com/forum/viewtopic.php?f=7&t=38655.
Tuesday, 25 February 2014
OctaneRender for Modo Released
The OctaneRender for Modo plugin has been released today.
The announcement is at http://render.otoy.com/forum/viewtopic.php?f=7&t=38336. There is a "Getting Started" video at https://vimeo.com/87048593. And the on-line manual is available at http://render.otoy.com/manuals/Modo/. The test renders that the beta testers have been doing are stunning, so looking forward to what users are going to produce with the plugin.
The announcement is at http://render.otoy.com/forum/viewtopic.php?f=7&t=38336. There is a "Getting Started" video at https://vimeo.com/87048593. And the on-line manual is available at http://render.otoy.com/manuals/Modo/. The test renders that the beta testers have been doing are stunning, so looking forward to what users are going to produce with the plugin.
Subscribe to:
Posts (Atom)