c# - 如何在 Unity、Unreal 等游戏引擎中或直接在 webXr 中实时导出从 Grasshopper、Rhino3d 分析的顶点颜色?
问题描述
我对这个社区很陌生。
我想知道如何从 Grasshopper/Rhino 3D 导出 Karamba 的顶点颜色、瓢虫的分析(颜色映射),以创建 AR 应用程序(具有统一、虚幻或其他)?
我正在尝试可视化分析,我从其他蚱蜢插件(如瓢虫、karamba、蜜蜂、蝴蝶)在 Rhino 中烘焙,统一或不真实。而且,我想更深入地了解纹理、材质和着色器如何在 GPU 中的 Rhino 和 Unity 中工作。
解决方案
Rhino6 支持导出顶点颜色,您也可以使用来自 Antonello di Nunzio 的 Ladybug Texture Mixer 来完成这项工作,将颜色顶点替换为纹理和材质。
def makeTexture(size, colorTree):
sb = size * 2 - 1
bm = System.Drawing.Bitmap(size * 2, size * 2)
bmb = System.Drawing.Bitmap(size * 4, size * 4)
count = -1
for x in xrange(size):
for y in xrange(size):
count += 1
if count < len(colorTree):
bm.SetPixel((x * 2) + 0, sb - ((y * 2) + 0), colorTree[count][0])
bm.SetPixel((x * 2) + 1, sb - ((y * 2) + 0), colorTree[count][1])
bm.SetPixel((x * 2) + 1, sb - ((y * 2) + 1), colorTree[count][2])
bm.SetPixel((x * 2) + 0, sb - ((y * 2) + 1), colorTree[count][3])
g = System.Drawing.Graphics.FromImage(bmb)
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.NearestNeighbor
g.DrawImage(bm, 0, 0, size * 4 + 1, size * 4 + 1)
return bmb
推荐阅读
- javascript - ASP.NET:使用右键单击触发用jQuery
- c# - 如何使工具提示具有圆角 - WPF
- sorting - 标准排序使 std::vector 无效
- websocket - 使用HttpClientUpgradeHandler建立Websocket连接?
- azure-devops - 我可以将自定义任务开始/结束记录写入 VSTS 构建/发布日志吗
- jquery - 如何正确更新 Highcharts Sankey 上的节点?
- cmake - 良好的 CMake 风格:继承属性
- python - 在单独的线程上关闭 wxPython 应用程序会遇到窗口警报
- javascript - 积极的前瞻正则表达式来标记文本
- ios - 离子 4 - livereload 不起作用