随笔分类 -  unity

unity3d webgame ios, android
平面阴影
摘要:写死了 投影在y = 0的平面 阅读全文

posted @ 2019-12-06 10:09 marcher 阅读(136) 评论(0) 推荐(0)

c#与lua交互里,错误处理
摘要:如果是c#代码出错了 会在所有导出的方法里,增加try catch,然后把错再抛到lua里。 如果是lua代码出错了 会同时抛出c#的exception,这样c#的栈才能正确处理 阅读全文

posted @ 2019-04-18 17:33 marcher 阅读(535) 评论(0) 推荐(0)

PBR工作流
摘要:目标是让substance效果和unity效果一致 分2步: 1.完成1个shader,效果和standard完全一致,抛去不需要的功能 2.使用新的shader,在substance里替代原有的渲染 # pbr shader 拷贝2份完全一致的工程,都使用standard,效果调到一致 stand 阅读全文

posted @ 2019-03-29 21:23 marcher 阅读(491) 评论(0) 推荐(0)

unity 里调试native code
摘要:因项目需要,需要调试dll工程代码。 把生成的debug dll和pdb拷贝进unity的plugins工程,遇到 断点无法进入,修改下调试信息格式,OK。 阅读全文

posted @ 2018-12-28 16:46 marcher 阅读(291) 评论(0) 推荐(0)

Dictionary里使用struct,enum做key
摘要:首先看下Dictionary的源码 hcp 其实就是走到obj.GetHashCode,如果obj.GetHashCode没有覆盖的话,那就会走到ValueType的GetHashCode 注意看 hcp.Equals 如果T没有实现IEquatable,就会走到DefaultCOmparer,然后 阅读全文

posted @ 2018-12-20 17:19 marcher 阅读(371) 评论(0) 推荐(0)

Unity字体文件放Resources和打成ab对比
摘要:情况一:公共字体打成ab的时候,加载A界面的时候加载了font的ab,卸载A和font的ab后,接着加载B界面,加载了font的ab,卸载B和font的ab,这时候字体对应的asset会在内存里有两份。 情况二:加载完A界面后,font的ab不卸载,只卸载A的ab,再加载B界面,最后释放所有的ab后 阅读全文

posted @ 2018-12-14 17:47 marcher 阅读(801) 评论(1) 推荐(0)

unity 人物描边锯齿
摘要:项目原来实现描边用了2个pass,一个pass cull back 渲染政策,一个cull front 渲染轮廓,但问题是锯齿特别明显 尝试了下边缘光实现描边,效果更不行,边线是断的 阅读全文

posted @ 2018-12-12 14:21 marcher 阅读(746) 评论(0) 推荐(0)

unity坑faq
摘要:遇到的坑记录下来,大都都是听说,没有实测 1. Graphics.copyTexture,在某些机型上不支持从不同类型拷贝 2. msaa 小米mix2不支持,晓龙845 3. android4.2下,不支持unitywebrequest,使用c#的httpwebequest代替 4. 字体ab不要 阅读全文

posted @ 2018-12-12 12:24 marcher 阅读(125) 评论(0) 推荐(0)

Unity使用native读取streamingasset里文件
摘要:需求是,使用native方式,读取apk包里的lua代码,读进c#,做解密 一准备unity工程 二unity导出android工程 注意playersetting 里设置包名 三android studio 打开导出的工程 四 添加代码 新增TGNative.java,增加native方法 五使用 阅读全文

posted @ 2018-12-11 16:48 marcher 阅读(767) 评论(0) 推荐(0)

GPU instancing
摘要:参考 https://www.cnblogs.com/hont/p/7143626.html github地址 https://github.com/yingsz/instancing/ 补充2点: 1怎么add per instancing objet data 代码里使用set*Array,比如 阅读全文

posted @ 2018-09-18 19:49 marcher 阅读(235) 评论(0) 推荐(0)

IlRuntime + protobuf-net
摘要:环境unity566,.net2.0 下载protobuf-net https://github.com/mgravell/protobuf-net/tree/r668 因为这个vs2015就可以打开,主干需要2017 下载ILRuntime https://github.com/Ourpalm/I 阅读全文

posted @ 2018-09-15 11:41 marcher 阅读(1204) 评论(0) 推荐(0)

unity里c# gc优化 -字符串
摘要:1使用unsafe,直接修改字符串 修改text部分 但是有个坑,lua是utf8编码,而c#里是ucs2b编码,所以需要做个转换,明天补上 需要2个方法,一个是获取utf8编码个数 一个是从utf8转到unicode(utf16) 修改text部分 阅读全文

posted @ 2018-09-04 22:02 marcher 阅读(463) 评论(0) 推荐(0)

mono下c#和c交互,字符串处理
摘要:起因是ulua里,从luajit读字符串到c#里,做了编码转换,如下 public static string lua_tostring(IntPtr luaState, int index) { var kind = lua_type(luaState, index); if (kind == L 阅读全文

posted @ 2018-09-04 21:59 marcher 阅读(441) 评论(0) 推荐(0)

unity里standard pbr(一)
摘要:关注forwardbase下的 standard.shader 跟踪到UnityStandardCoreForward.cginc UNITY_STANDARD_SIMPLE开关是简化版意思,进下边的分支 顶点着色器 vertForwardBase 先看输出 至此顶点着色器完事,下篇开始像素着色器 阅读全文

posted @ 2018-08-25 16:35 marcher 阅读(1370) 评论(0) 推荐(0)

PBR探索
摘要:原理 根据能量守恒,以及一系列光照原理得出微表面BRDF(Bidirectional Reflectance Distribution Function)公式 // D(h) F(v,h) G(l,v,h) //f(l,v) = // 4(n·l)(n·v) D;微表面法线分布函数,选取ggx近似 阅读全文

posted @ 2018-08-23 14:45 marcher 阅读(429) 评论(0) 推荐(0)

注意事项
摘要:1max里的模型,角度值都是0,到了unity里就有个x轴-90度,需要在max里,按x轴转正90度,到unity里就都是0,0,0 2动画有抖动,是因为动画压缩导致的 阅读全文

posted @ 2018-08-20 17:53 marcher 阅读(134) 评论(0) 推荐(0)

导航