-
Notifications
You must be signed in to change notification settings - Fork 636
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[SPIKE] Use Helix instancing to save memory for large number of mesh geometry #11245
base: master
Are you sure you want to change the base?
Conversation
} | ||
else | ||
{ | ||
instancingModel = new InstancingMeshGeometryModel3D(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
hmm - we should inspect the EffectsManager at runtime to see if theres an effect for instancing meshes - it may try to use our shader.
{ | ||
baseId = baseId.Split(':')[0]; | ||
} | ||
var id = ((p.RequiresPerVertexColoration || p.Colors != null || p.RequiresCustomTransform) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
does this somehow conflict with line this line below:
id = ((rp.RequiresCustomTransform) ? rp.Description : baseId) + PointsKey;
@aparajit-pratap I think in our vertex shaders we'll need to add something like this: coming back this after thinking about it for another few minutes: |
Another thought on this type of approach - opposed to just replicated calls, it would also be good to try this on calls like move or scale, rotate etc- where instancing and transforming is exactly what the node does and instancing will definitely work. |
Purpose
Trial implementation exploring using Helix instancing to render large number of mesh geometry.
This goes hand-in-hand with corresponding LibG changes here: https://git.autodesk.com/Dynamo/LibG/pull/1080
Assumptions
Issues
Declarations
Check these if you believe they are true
*.resx
files