Thanks Werner! At least we have started with this :-). Indeed it is a lot
to learn

On Tue, Jun 7, 2022 at 3:15 PM Werner Modenbach <
[email protected]> wrote:

> Hi Nick,
>
> just converting something to meshlets doesn't make much sense.
> The key aspect of meshlets is the optimisation of shader topology and
> shaders itself
> for optimized usage of existing hardware, paralellism of kernels on the
> boards(warps), threading
> model on the boards, thread cooperative functions, ultra high performance
> of shared memory
> and optimizations possible due to free access to any user data.
> All this, together with the abilitiy of task and mesh shaders in on board
> dynamic generation of mesh shader instances, enables you to do on board
> LOD handling,
> on boerd culling and much more. Here is the real potential for gaining
> performance boosts.
> So you have to learn about the hardware and how to use it in an optimal
> way.
>
> Werner
>
> Am 03.06.2022 um 01:27 schrieb Trajce Nikolov NICK:
>
> Hi!
>
> Here is a working code based on the discussion in thus thread. It is just
> using meshlets,  no performance boost, so we will study it further and if
> anyone else has suggestions, all are welcome! It was tested on large paged
> terrain. The attached image is a reference.
>
> Thanks a bunch again!
>
> On Thu, Jun 2, 2022, 10:51 Trajce Nikolov NICK <
> [email protected]> wrote:
>
>> Hi! I just wanted to clarify this, was expecting it that way. Anyway,
>> thank you for the support and the snippets! Couldn't do it that fast
>> without your hints! I will soon share the code for others that might be
>> interested in. This is what is missing here, a workable use case covering
>> at least a bit more.if not all.
>>
>> Thanks a bunch again!
>> Cheers,
>> Nick
>>
>> On Thu, Jun 2, 2022, 10:08 Werner Modenbach <
>> [email protected]> wrote:
>>
>>> Hi Nick,
>>> you really have to read the docs of mesh shading. There are NO
>>> predefined data structures. No vertices, no colors - just NOTHING! All data
>>> has to be packed into arrays and overlayed by textures.
>>> Please go ahead yourself now. I cannot hold your hands during the
>>> development. Reading docs and studying the existing git repository is
>>> mandatory now.
>>> Good luck
>>> Werner
>>>
>>>
>>> On 2. Juni 2022 08:29:08 MESZ, Trajce Nikolov NICK <
>>> [email protected]> wrote:
>>>>
>>>> Yes, it is tricky. Also want to ask, how you are passing uvs,  via
>>>> vertex attrs?
>>>>
>>>> On Wed, Jun 1, 2022, 16:03 Werner Modenbach <
>>>> [email protected]> wrote:
>>>>
>>>>> It took me a year for discovering all the wrong path I took and
>>>>> understanding how it works. But it was worth the effort. Performance 
>>>>> factor
>>>>> 10 is my result.
>>>>>
>>>>>
>>>>> On 1. Juni 2022 14:46:43 MESZ, Trajce Nikolov NICK <
>>>>> [email protected]> wrote:
>>>>>>
>>>>>> This is how it looks like. Thanks so much for the hints, it took like
>>>>>> 12 hours to get there. Not significant performance boost though. Have to
>>>>>> learn more. Thanks again!
>>>>>>
>>>>>> Nick
>>>>>>
>>>>>> On Wed, Jun 1, 2022, 14:14 Werner Modenbach <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hmmm...
>>>>>>> This is a very global question.
>>>>>>> Read the articles about mesh shaders and how to tailor them for
>>>>>>> optimal hardware usage.
>>>>>>>
>>>>>>>
>>>>>>> On 1. Juni 2022 13:05:00 MESZ, Trajce Nikolov NICK <
>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>> Ya, you're right . I made it work with paged terrain data.
>>>>>>>>
>>>>>>>> Any hints for optimal settings?
>>>>>>>>
>>>>>>>> On Wed, Jun 1, 2022, 11:17 Werner Modenbach <
>>>>>>>> [email protected]> wrote:
>>>>>>>>
>>>>>>>>> Hi Nick,
>>>>>>>>> I think this is really the point where it is leaving meshlet
>>>>>>>>> specific support.
>>>>>>>>> This is the standard developers work.
>>>>>>>>> Werner
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> On 1. Juni 2022 09:39:41 MESZ, Trajce Nikolov NICK <
>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>> Yea, but I have a handle on that part. Can ve done via read
>>>>>>>>>> callback in the registry, or saved as well, I saw there is 
>>>>>>>>>> serialization
>>>>>>>>>> support.
>>>>>>>>>>
>>>>>>>>>> I wrote a simple visitor that should convert a loaded model into
>>>>>>>>>> meshlets. I had it working nicely until I started to experiment with
>>>>>>>>>> threaded access.
>>>>>>>>>>
>>>>>>>>>> Attached is the source. Not elegant at all but I would be happy
>>>>>>>>>> if you can have a look and maybe spot the problem
>>>>>>>>>>
>>>>>>>>>> Thanks a bunch!
>>>>>>>>>>
>>>>>>>>>> On Wed, Jun 1, 2022, 09:25 Werner Modenbach <
>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>
>>>>>>>>>>> Hi Nick,
>>>>>>>>>>> good to hear you are getting closer.
>>>>>>>>>>> Due to the fact that standard classes of paged data handle
>>>>>>>>>>> vertex arrays etc. autonomously and mesh shaders work different I 
>>>>>>>>>>> think you
>>>>>>>>>>> have to look up where this handling is done and write your own 
>>>>>>>>>>> derived
>>>>>>>>>>> class.
>>>>>>>>>>> Werner
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> On 31. Mai 2022 21:28:08 MESZ, Trajce Nikolov NICK <
>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> Hi again Werner,
>>>>>>>>>>>>
>>>>>>>>>>>> I think I got it after reading few articles, actually the main
>>>>>>>>>>>> one from NVIDIA. Do you have experience in using this with paged 
>>>>>>>>>>>> data?
>>>>>>>>>>>>
>>>>>>>>>>>> On Sat, May 28, 2022 at 8:35 PM Trajce Nikolov NICK <
>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> Hi Werner!
>>>>>>>>>>>>>
>>>>>>>>>>>>> Thanks soo much for the shared code and the hints!!! I have a
>>>>>>>>>>>>> better understanding now how all works together wrt. buffers. 
>>>>>>>>>>>>> Just this
>>>>>>>>>>>>> snippet, if you are willing to provide more hints.
>>>>>>>>>>>>>
>>>>>>>>>>>>> int startVertex = 1;
>>>>>>>>>>>>>
>>>>>>>>>>>>>     int anzahl = _anzahlVertices;
>>>>>>>>>>>>>
>>>>>>>>>>>>>     for (auto i=0; i<workgroupsInGeometry; ++i) {
>>>>>>>>>>>>>
>>>>>>>>>>>>>         (*MeshletInfosArray)[i][0] = startVertex;
>>>>>>>>>>>>>
>>>>>>>>>>>>>        (*MeshletInfosArray)[i][1] = min(TS_WORKGROUP_SIZE, 
>>>>>>>>>>>>> anzahl);
>>>>>>>>>>>>>
>>>>>>>>>>>>>         startVertex += TS_WORKGROUP_STEP;
>>>>>>>>>>>>>
>>>>>>>>>>>>>         anzahl -=TS_WORKGROUP_STEP;
>>>>>>>>>>>>>
>>>>>>>>>>>>>     }
>>>>>>>>>>>>>
>>>>>>>>>>>>> The ideal is to have a working code, a bit more robust then the 
>>>>>>>>>>>>> one I found in the repo in the meshshaders branches. But I am 
>>>>>>>>>>>>> getting there slowly :-)
>>>>>>>>>>>>>
>>>>>>>>>>>>> This is indeed a big thing!
>>>>>>>>>>>>>
>>>>>>>>>>>>> Big thanks!
>>>>>>>>>>>>>
>>>>>>>>>>>>> Nick
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>>>>>>>>>>>>  Virus-free.
>>>>>>>>>>>>> www.avast.com
>>>>>>>>>>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Sat, May 28, 2022 at 3:09 PM Trajce Nikolov NICK <
>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Okay. Thanks a buch for these  hints! I am starting next week
>>>>>>>>>>>>>> with this. Will post findings
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Sat, May 28, 2022, 14:44 Werner Modenbach <
>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Yes, that is the only (?) way.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On 28. Mai 2022 12:23:48 MESZ, Trajce Nikolov NICK <
>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Hi!
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> I haven't looked at the code yet, just want to clarify one
>>>>>>>>>>>>>>>> thing: you are providing the meshlets verts uvs normals 
>>>>>>>>>>>>>>>> through 1d texture?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> On Wed, May 25, 2022, 12:17 Trajce Nikolov NICK <
>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Hi!
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> Thanks a bunch! Is your code in the repo so I can have a
>>>>>>>>>>>>>>>>> look?
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> On Wed, May 25, 2022, 09:17 Werner Modenbach <
>>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> Hi Nick,
>>>>>>>>>>>>>>>>>> There is nothing special in the contents of the buffers.
>>>>>>>>>>>>>>>>>> They are just arrays like vertex array. Special is the 
>>>>>>>>>>>>>>>>>> definition as buffer
>>>>>>>>>>>>>>>>>> objects and "overlaying" them with a texture like shown in 
>>>>>>>>>>>>>>>>>> my code. In the
>>>>>>>>>>>>>>>>>> shader you have the instance ID and from that you access the 
>>>>>>>>>>>>>>>>>> meshlet info
>>>>>>>>>>>>>>>>>> via the 1D texture. Get your operation parameters from there 
>>>>>>>>>>>>>>>>>> and fetch
>>>>>>>>>>>>>>>>>> vertices, normals, colors etc. also via the textures.
>>>>>>>>>>>>>>>>>> The only difficulty is the size limit of the textures. So
>>>>>>>>>>>>>>>>>> you eventually have to split the arrays.
>>>>>>>>>>>>>>>>>> That's it.
>>>>>>>>>>>>>>>>>> Werner
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> On 24. Mai 2022 22:59:52 MESZ, Trajce Nikolov NICK <
>>>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Hi,
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> I am also researching this subject. Have you succeeded?
>>>>>>>>>>>>>>>>>>> Any hints about the meshelts buffer objects? Any other 
>>>>>>>>>>>>>>>>>>> hints?
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Thank you a bunch for any shared info!
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> Nick
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> On Wed, May 11, 2022 at 5:35 PM DC <
>>>>>>>>>>>>>>>>>>> [email protected]> wrote:
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Thanks Werner!
>>>>>>>>>>>>>>>>>>>> This will certainly help me get started.
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> Much appreciated,
>>>>>>>>>>>>>>>>>>>> DC
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>> On Wednesday, May 11, 2022 at 4:13:08 AM UTC-5 Werner
>>>>>>>>>>>>>>>>>>>> Modenbach wrote:
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Hi DC,
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> here is the link:
>>>>>>>>>>>>>>>>>>>>> https://github.com/nvpro-samples/gl_vk_meshlet_cadscene
>>>>>>>>>>>>>>>>>>>>> This should help you with items 1) and 2)
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> For item 3) see my code below.
>>>>>>>>>>>>>>>>>>>>> The way I assign the data structures in OSG is like
>>>>>>>>>>>>>>>>>>>>> that:
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // ----------------------
>>>>>>>>>>>>>>>>>>>>>     // Create Meshlet primitive    // 
>>>>>>>>>>>>>>>>>>>>> ----------------------
>>>>>>>>>>>>>>>>>>>>>     
>>>>>>>>>>>>>>>>>>>>> _geode->getOrCreateStateSet()->getOrCreateUniform(TASK_INVOCATIONS_PER_MESHLET,
>>>>>>>>>>>>>>>>>>>>>  osg::Uniform::INT)->set(taskInvocationsPerMeshlet);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<osg::Geometry> geometry = new 
>>>>>>>>>>>>>>>>>>>>> osg::Geometry;
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<osg::ProxyPrimitive> proxyPrimitive = 
>>>>>>>>>>>>>>>>>>>>> new osg::ProxyPrimitive;
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     proxyPrimitive->drawMeshTasks = new 
>>>>>>>>>>>>>>>>>>>>> osg::DrawMeshTasks(0, workgroupsInGeometry * 
>>>>>>>>>>>>>>>>>>>>> taskInvocationsPerMeshlet);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     geometry->setUseDisplayList(false);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     geometry->addPrimitiveSet(proxyPrimitive.get());
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     _geode->addChild(geometry);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // ----------------------
>>>>>>>>>>>>>>>>>>>>>     // Vertices
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // ----------------------
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<osg::Vec4Array> osgVertices = new 
>>>>>>>>>>>>>>>>>>>>> osg::Vec4Array(toCopy);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     for (auto i=0; i<toCopy; ++i) {    // fill array      
>>>>>>>>>>>>>>>>>>>>>   // Fill buffer
>>>>>>>>>>>>>>>>>>>>>     }
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // Create Buffer and Texture
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<osg::VertexBufferObject> 
>>>>>>>>>>>>>>>>>>>>> verticesBufferObject = new osg::VertexBufferObject();
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     verticesBufferObject->setUsage(GL_DYNAMIC_READ_ARB);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     
>>>>>>>>>>>>>>>>>>>>> osgVertices->setBufferObject(verticesBufferObject.get());
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<osg::TextureBuffer> vertexTexture = new 
>>>>>>>>>>>>>>>>>>>>> osg::TextureBuffer(osgVertices.get());
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     vertexTexture->setInternalFormat(GL_RGBA32F_ARB);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     
>>>>>>>>>>>>>>>>>>>>> vertexTexture->setInternalFormatMode(Texture::USE_USER_DEFINED_FORMAT);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     
>>>>>>>>>>>>>>>>>>>>> stateSet->setTextureAttributeAndModes(MESH_VERTEX_ARRAY_TEXTURE_UNIT,
>>>>>>>>>>>>>>>>>>>>>  vertexTexture.get());
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // ----------------------
>>>>>>>>>>>>>>>>>>>>>     // MeshletInfos
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // ----------------------
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<Vec4uiArray> MeshletInfosArray = new 
>>>>>>>>>>>>>>>>>>>>> Vec4uiArray(workgroupsInGeometry);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     int startVertex = 1;
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     int anzahl = _anzahlVertices;
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     for (auto i=0; i<workgroupsInGeometry; ++i) {
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>         (*MeshletInfosArray)[i][0] = startVertex;
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>         (*MeshletInfosArray)[i][1] = 
>>>>>>>>>>>>>>>>>>>>> min(TS_WORKGROUP_SIZE, anzahl);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>         startVertex += TS_WORKGROUP_STEP;
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>         anzahl -= TS_WORKGROUP_STEP;
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     }
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // Create Buffer and Texture
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<osg::VertexBufferObject> 
>>>>>>>>>>>>>>>>>>>>> meshInfosBufferObject = new osg::VertexBufferObject();
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     meshInfosBufferObject->setUsage(GL_DYNAMIC_READ_ARB);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     
>>>>>>>>>>>>>>>>>>>>> MeshletInfosArray->setBufferObject(meshInfosBufferObject.get());
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     osg::ref_ptr<osg::TextureBuffer> meshInfosTexture = 
>>>>>>>>>>>>>>>>>>>>> new osg::TextureBuffer(MeshletInfosArray.get());
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     meshInfosTexture->setInternalFormat(GL_RGBA32UI_EXT);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     
>>>>>>>>>>>>>>>>>>>>> meshInfosTexture->setInternalFormatMode(Texture::USE_USER_DEFINED_FORMAT);
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     
>>>>>>>>>>>>>>>>>>>>> stateSet->setTextureAttributeAndModes(MESH_INFOS_ARRAY_TEXTURE_UNIT,
>>>>>>>>>>>>>>>>>>>>>  meshInfosTexture.get());
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>     // ----------------------
>>>>>>>>>>>>>>>>>>>>>     // Create and assign the Task- and Mesh shader as 
>>>>>>>>>>>>>>>>>>>>> usual by using the corresponding shader type    // 
>>>>>>>>>>>>>>>>>>>>> ----------------------
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> Am 10.05.2022 um 21:20 schrieb DC:
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> OK.  Thank you.
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> On Tuesday, May 10, 2022 at 12:59:37 PM UTC-5 Werner
>>>>>>>>>>>>>>>>>>>>> Modenbach wrote:
>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>>> Hi DC,
>>>>>>>>>>>>>>>>>>>>>> I think we should clarify some aspects before going
>>>>>>>>>>>>>>>>>>>>>> into the details. If I understand well, your problem can 
>>>>>>>>>>>>>>>>>>>>>> be split into 3
>>>>>>>>>>>>>>>>>>>>>> parts
>>>>>>>>>>>>>>>>>>>>>> 1) You want to convert an existing model into
>>>>>>>>>>>>>>>>>>>>>> meshlets. This is not related to OSG. But I found a git 
>>>>>>>>>>>>>>>>>>>>>> repository from
>>>>>>>>>>>>>>>>>>>>>> NVIDIA doing this job. I will lookup the link and send 
>>>>>>>>>>>>>>>>>>>>>> it to you tomorrow.
>>>>>>>>>>>>>>>>>>>>>> 2) For this to work you need task/mesh shaders doing
>>>>>>>>>>>>>>>>>>>>>> their job on the GPU. This is also not related to OSG. 
>>>>>>>>>>>>>>>>>>>>>> Maybe you find some
>>>>>>>>>>>>>>>>>>>>>> starting point in the repository as well.
>>>>>>>>>>>>>>>>>>>>>> 3) You need to know how to load your shader and how
>>>>>>>>>>>>>>>>>>>>>> to setup the data structures in OSG. I hope I can help 
>>>>>>>>>>>>>>>>>>>>>> you with that by
>>>>>>>>>>>>>>>>>>>>>> providing some code snippets.
>>>>>>>>>>>>>>>>>>>>>> Just let me know when you are ready for that step.
>>>>>>>>>>>>>>>>>>>>>> But the code I provided already should help you.
>>>>>>>>>>>>>>>>>>>>>> Werner
>>>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>>>> You received this message because you are subscribed to
>>>>>>>>>>>>>>>>>>>> the Google Groups "OpenSceneGraph Users" group.
>>>>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving
>>>>>>>>>>>>>>>>>>>> emails from it, send an email to
>>>>>>>>>>>>>>>>>>>> [email protected].
>>>>>>>>>>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>>>>>>>>>>> https://groups.google.com/d/msgid/osg-users/7680959c-297e-41ff-9159-464b38c8df73n%40googlegroups.com
>>>>>>>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/osg-users/7680959c-297e-41ff-9159-464b38c8df73n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>>> trajce nikolov nick
>>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>>>> You received this message because you are subscribed to
>>>>>>>>>>>>>>>>>> the Google Groups "OpenSceneGraph Users" group.
>>>>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails
>>>>>>>>>>>>>>>>>> from it, send an email to
>>>>>>>>>>>>>>>>>> [email protected].
>>>>>>>>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>>>>>>>>> https://groups.google.com/d/msgid/osg-users/eb4531f5-3420-4c75-be46-539490c5c659%40email.android.com
>>>>>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/osg-users/eb4531f5-3420-4c75-be46-539490c5c659%40email.android.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>>>>>>> Google Groups "OpenSceneGraph Users" group.
>>>>>>>>>>>>>>> To unsubscribe from this group and stop receiving emails
>>>>>>>>>>>>>>> from it, send an email to
>>>>>>>>>>>>>>> [email protected].
>>>>>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>>>>>> https://groups.google.com/d/msgid/osg-users/3fd7dcac-1cec-43d9-ac91-04e22f331bd9%40email.android.com
>>>>>>>>>>>>>>> <https://groups.google.com/d/msgid/osg-users/3fd7dcac-1cec-43d9-ac91-04e22f331bd9%40email.android.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>>>>>> .
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> trajce nikolov nick
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>>>>>>>>>>>>  Virus-free.
>>>>>>>>>>>>> www.avast.com
>>>>>>>>>>>>> <https://www.avast.com/sig-email?utm_medium=email&utm_source=link&utm_campaign=sig-email&utm_content=webmail>
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> trajce nikolov nick
>>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> You received this message because you are subscribed to the
>>>>>>>>>>> Google Groups "OpenSceneGraph Users" group.
>>>>>>>>>>> To unsubscribe from this group and stop receiving emails from
>>>>>>>>>>> it, send an email to [email protected].
>>>>>>>>>>> To view this discussion on the web visit
>>>>>>>>>>> https://groups.google.com/d/msgid/osg-users/0ab4c82f-1f17-47e9-aa1d-9c02b5a3f7fb%40email.android.com
>>>>>>>>>>> <https://groups.google.com/d/msgid/osg-users/0ab4c82f-1f17-47e9-aa1d-9c02b5a3f7fb%40email.android.com?utm_medium=email&utm_source=footer>
>>>>>>>>>>> .
>>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>> You received this message because you are subscribed to the Google
>>>>>>>>> Groups "OpenSceneGraph Users" group.
>>>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>>>> send an email to [email protected].
>>>>>>>>> To view this discussion on the web visit
>>>>>>>>> https://groups.google.com/d/msgid/osg-users/8dcaed4f-0992-482a-abdb-7d30e7f83b5b%40email.android.com
>>>>>>>>> <https://groups.google.com/d/msgid/osg-users/8dcaed4f-0992-482a-abdb-7d30e7f83b5b%40email.android.com?utm_medium=email&utm_source=footer>
>>>>>>>>> .
>>>>>>>>>
>>>>>>>> --
>>>>>>> You received this message because you are subscribed to the Google
>>>>>>> Groups "OpenSceneGraph Users" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it,
>>>>>>> send an email to [email protected].
>>>>>>> To view this discussion on the web visit
>>>>>>> https://groups.google.com/d/msgid/osg-users/f9c21199-c94b-4c2b-9c10-90f80ce12a57%40email.android.com
>>>>>>> <https://groups.google.com/d/msgid/osg-users/f9c21199-c94b-4c2b-9c10-90f80ce12a57%40email.android.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>> --
>>>>> You received this message because you are subscribed to the Google
>>>>> Groups "OpenSceneGraph Users" group.
>>>>> To unsubscribe from this group and stop receiving emails from it, send
>>>>> an email to <[email protected]>
>>>>
>>>>

-- 
trajce nikolov nick

-- 
You received this message because you are subscribed to the Google Groups 
"OpenSceneGraph Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/osg-users/CAO-%2Bzi%3DFabLcng5WX1fqa7U-JphVindF_iYcCBsxTaFw5Fo6kg%40mail.gmail.com.

Reply via email to