ShivaMist wrote:Is this topic dead ?
Try this
- Code: Select all
from typing import Optional
import c4d
doc: c4d.documents.BaseDocument # The active document
op: Optional[c4d.BaseObject] # The active object, None if unselected
def main() -> None:
# Called when the plugin is selected by the user. Similar to CommandData.Execute.
rd = doc.GetActiveRenderData()
vpost = rd.GetFirstVideoPost()
OctaneRender_ID = 1029525
octVp=None
while vpost: # search OctaneRender
#print(vpost)
if vpost.GetName() == "Octane Renderer": octVp=vpost
vpost = vpost.GetNext()
if octVp is None: #Create new Octane Render
rd[c4d.RDATA_RENDERENGINE] = OctaneRender_ID
rd.InsertVideoPostLast(c4d.documents.BaseVideoPost(OctaneRender_ID))
bc = rd.GetDataInstance()
bc[c4d.RDATA_RENDERENGINE] = OctaneRender_ID # set OctaneRender as active renderer
print('Added Octane VideoPost')
c4d.EventAdd()
else:
print('We have Octane VideoPost')
bc = rd.GetDataInstance()
bc[c4d.RDATA_RENDERENGINE] = OctaneRender_ID #switch to Octane
c4d.EventAdd()
if __name__ == '__main__':
main()