Grasshopper

algorithmic modeling for Rhino

Hi,


I have generated some meshes with vertex color corresponding to their sun exposure. It looks great in Rhino, but I want to be able to get some kind of output from Rhino. I can't create a rendering because that doesn't show the color. The only option seems to be a screen dump, but that of course gives a very low resolution. Is there another way? Maybe somehow create a texture from the color information (seems like a weird solution)?

Or,
does anyone know how to export a model with the FalseColor data? Preferably to Microstation...
is there a renderer that can read FalseColor data, either a stand alone or maybe Rhino-renderer?

This actually not strictly a GH-issue...


Views: 4413

Replies to This Discussion

Hey Simon,
this is an issue that I've had for a while but never have had the time to solve...I did just recently realize that the regular rhino render does do per vertex shading on meshes...at least it seems it does.

Here is a rhinoRender and a screenshot...you will see the results are not really that great...


I would like the render to look more like the screenshot, but I cannot achieve this.
I would really appreciate it if someone with other rendering engines for Rhino could test this out... I know vray for rhino does not support per vertex shading...at least last time I checked. What about Maxwell, Flamingo, Brazil, etc etc? Other times, when the mesh is a lower resolution, I have converted mesh faces to surfaces and colored them the average of their verticies, but its not my favorite technique.
If it's a 2.5D mesh (like the one in the image you posted), you could also create a texture with the colour information. This is not trivial either (at least not to do it quickly) but it would allow you to use the render engine of your choice.

A quick and dirty way to solve this would be to use the ViewCaptureToFile command in Rhino within the Top Viewport.

--
David Rutten
david@mcneel.com
Poprad, Slovakia
Yes, I have also done this before, but takes a bit of fudging to get it right on the money...for me actually high res screen caps seem to work fine for now...and the hot texture mapping for transparency which I have applied :P
Hi,

Thanks for your replies. I'm dealing with an urban plan with colored facades and ground. The ground is flat so that one is easy (but with a bit low res unfortunately). The facades though, they will be tricky and just too time consuming.
Someday we'll find a cure...
Ok. I found a solution that works for this project. I used the Mesh Explode module from [uto]s Mesh Analysis tools with interpolate color set to true. This removes the smooth gradient on the meshes and sets each of the faces to one color only. Then a small RhinoScript that takes the vertex color and sets it to the material color.
I've posted this solution several times in the forum:
http://www.grasshopper3d.com/forum/topics/colour-shading-a-mesh?com...

Although it seems no one is using this approach, i use it all the time and it works great.

Basically, instead of meshing a surface and coloring the vertex points of the mesh, you can generate a bitmap image that will be uv mapped to the surface (It follows pretty much the same logic). Through a scripting component you can also create a material that uses the generated bitmap in the diffuse slot and assign it to the surface. It will work with all render engines.
yes, this is a nice approach Vicente. This works well if you have a surface to begin with, but sometimes this is not the case, and often this input mesh has no decipherable uv correlation. I suppose you could get the underlying bounding box plane of the mesh, divide it to a certain resolution, and find the closest point in xy and use that point's color as the pixel color for the bitmap...
Yes, it only works with surfaces but the OP said he was meshing surfaces so it should work for him. 2.5D meshes is also simple enough to solve, the problem is meshes with an unordered set of points.

In the example below i tried to convert mesh vertex colors into a uv-mapped bitmap. Since unfolding the mesh must be pretty complicated i used a tacky method that consists of duplicating the vertices so that each face uses a unique vertex (using more memory that necessary), then i painted the color of the vertices into a bitmap texture forming squares (one for each face) that are ordered in rows and columns. Still i don't seem to have the logic of the texturecoordinates right since some vertices are not getting the right color.

Attachments:
Thats hot! Very nice man!
Vicente,
I am attempting to use your mesh_uvtexture ghx file however the resulting .bmp file is only 8x8 pixels. Is there a way to increase the resolution?

Thanks!
I think Vicente reposted the definition with a bit more explaination here:

http://www.grasshopper3d.com/forum/topics/solution-to-baking-multip...

RSS

About

Translate

Search

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service