博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Paint in 3D 基本使用方法(Unity 3D)
阅读量:20817 次
发布时间:2019-12-03

本文共 974 字,大约阅读时间需要 3 分钟。

不涉及Paint in 3D使用说明书中的内容,比如:给预要绘制图形的物体添加碰撞体,添加可绘制脚本,添加画笔管理器。
本文内容包括: Paint in 3D的目标物体的绘画内容更新,清除参数Texture模板参数等
首先的需求:你想要清除画笔内容,清除Paint in 3D 默认生成的Texture内容,更新Texture
步骤处理:
首先获取挂载P3D_Paintable脚本的组件,并把以前的物体MeshRenderer中材质上的Shader Texture清空,例如:
gb.GetComponent<
MeshRenderer
>().material.SetTexture(
"_MainTex"
,
null
);
//这里及余下的gb皆是被绘制物体
接着,清除P3D_Paintable脚本上的Texture,并添加新的Texture:
gb.GetComponent<
P3D_Paintable
>().Textures.Clear();
gb.GetComponent<
P3D_Paintable
>().AddTexture();
然后,设置P3D_Paintable的唤醒参数:
gb.GetComponent<
P3D_Paintable
>().Textures[0].CreateOnAwake =
true
;
gb.GetComponent<
P3D_Paintable
>().Textures[0].DuplicateOnAwake =
true
;
再然后,设置绘制地图的基本颜色,颜色可调,包括透明通道(这一步和生成的Texture底板有关):
 gb.GetComponent<
P3D_Paintable
>().Textures[0].CreateColor=
new
Color
(1,1,1,0);
最后唤醒函数即可(Awake函数里面包含有初始化生成底图的内容):
gb.GetComponent<
P3D_Paintable
>().Textures[0].Awake(gb);
这里可能对你有一些帮助:
CreateColor 参数赋值中,设置Alpha值为0,保证底图是透明的,这样不会遮挡绘制物体的原本颜色,再把Painter里的
绘制颜色值得Alpha设置为1,即可正常进行绘制。

转载地址:http://xkuubk.baihongyu.com/

你可能感兴趣的文章
myeclipse 的 maven工程报错或pom.xml头报错解决办法
查看>>
反向Ajax,第2部分:WebSocket
查看>>
反向Ajax,第1部分:Comet介绍
查看>>
反向Ajax,第3部分:Web服务器和Socket.IO
查看>>
反向Ajax,第4部分:Atmosphere和CometD
查看>>
反向Ajax,第5部分:事件驱动的Web开发
查看>>
Servlet3.0新特性&动态代理
查看>>
servlet3 实现请求异步处理
查看>>
java线程管理利器:java.util.current的用法举例
查看>>
native2ascii.exe的使用
查看>>
linux下快速和简单的安装docker
查看>>
docker-machine的安装
查看>>
用docker-machine创建虚拟主机
查看>>
spring mvc 4 + swagger2
查看>>
Jenkins之持续构建
查看>>
sonarqube 启动不了,异常提示:远程主机强迫关闭了一个现有的连接。
查看>>
jenkins 参数化构建作业
查看>>
求解java.lang.IllegalStateException: getOutputStream() has already be
查看>>
容器div内容超出后,自动出现滚动条
查看>>
RDLC报表相关
查看>>