Vertex Colors?

Edward

0
Messages
53
Vertex Colors?

Vertex color painting involves giving vertices color, and ends up tinting the image used on the mesh. It's often used as a fast alternative to real-time lighting and large light maps in realtime applications. The technique can still be seen in modern games and especially on devices that have limited processing power.

I think that this would be a nice addition to Cheetah3D for those that are interested in exporting to realtime applications. Something simple like the weight painting tool would even be adequate in my opinion.

You can see a sample of vertex colors in Tomb Raider Anniversary.
 

Attachments

  • VertexColor.jpg
    VertexColor.jpg
    133.6 KB · Views: 1,276
Last edited:
How are vertex colors usually use. Just a color per vertex or a color per polygon corner?
 
Just one color per vertex and it blends over the connected faces in OpenGL. By adjusting the geometry, you can change the sharpness of the blend.


Seb: Yes, I play it occasionally :smile:
 

Attachments

  • VertexColor2.jpg
    VertexColor2.jpg
    20.7 KB · Views: 1,266
Last edited:
Hmm- I don't know. I need to export the painted vertex colors to another application, so I'm not sure that nodes would work.
 
Last edited:
Hmm- I don't know. I need it for exporting to another application, not rendering, so I'm not sure if that would work.

if you need those informations as a lightmap then it could be baked but if you need them as vertex data then I'm afraid you have to wait for Martin's solution...
not that I know how to do it, anyway... just wondering (so sad one of our node genius is not here ATM)
 
I wouldn't be rendering the vertex colors, just exporting them directly to another application with a script. Vertex colors require only one render pass in OpenGL and by using a light map texture on the entire scene I would need to render the scene twice. I'm only familiar of their uses in video games; you can probably use vertex colors for rendering but I haven't looked into it.
 
Just one color per vertex and it blends over the connected faces in OpenGL. By adjusting the geometry, you can change the sharpness of the blend.

Thanks for the example. Colors per vertex are easier to implement. But the there is still the problem is the colors should be polygon tool save or not. For example if a change in the topology of the mesh ruins the vertex colors or if the tools correctly interpolate them. Polygon tool safety is of course much more work. Do you know how this is handles in other apps?

Bye
Martin
 
That's a good point. I highlighted operations that require the addition or removal of vertices, and on the left side I show what the operations might look like.

Scalpel is tricky if you are cutting in the middle of a face. Not exactly sure how that would work.
 

Attachments

  • Implementation.jpg
    Implementation.jpg
    75.4 KB · Views: 855
Last edited:
Hi,
updating all these tools is a considerable work. That's why I'm thinking more about a vertex colors light solution.
A Vertex-Color Tag and a brush tool to paint the colors. That light solution wouldn't work with mesh topology edits but it would be better than nothing.

Bye
Martin
 
Thanks for the example. Colors per vertex are easier to implement. But the there is still the problem is the colors should be polygon tool save or not. For example if a change in the topology of the mesh ruins the vertex colors or if the tools correctly interpolate them. Polygon tool safety is of course much more work. Do you know how this is handles in other apps?

Bye
Martin

In modo and Maya, vertex colors are not ruined by topology changes, they are interpolated.

We are using vertex RGBA in my game to drive multi-texturing on our custom terrains. 4 sets of texture splats are masked using the RGB and A channels on our verts. This is not just a technique for low end games... it is very important for multi-texturing on our high-quality settings too.
 
Hi,
updating all these tools is a considerable work. That's why I'm thinking more about a vertex colors light solution.
A Vertex-Color Tag and a brush tool to paint the colors. That light solution wouldn't work with mesh topology edits but it would be better than nothing.

Bye
Martin

A Vertex-Color Tag and a brush tool to paint the colors is exactly what I need...
 
..updating all these tools is a considerable work. That's why I'm thinking more about a vertex colors light solution.
I agree! I didn't realize how much work it would be until I started to think about how it would be implemented. A vertex tag solution definitely sounds adequate in my opinion.
 
I'm happy to hear that that would be OK for the first. The polygon tools support could still be added in a later update.

Bye
Martin
 
Hi,
I'm curious for what vertex colors could be used in a raytracer.:confused: I personally don't see a practical usage for it since texture number and resolution is not limited in a raytracer compared to OpenGL.

Many raytracers don't even support vertex colors anymore. I would say vertex colors in raytracers are pretty much dead.

Bye
Martin
 
Back
Top