- 博客(37)
- 收藏
- 关注
原创 lua源码编译成静态库 + 嵌套进应用并与C++交互
【参考】lua5.3.3 vs 编译 静态库VS 2013 编译Lua源码,并与C++ 进行简单交互
2019-02-19 14:03:24
497
转载 Unity产生Xcode工程的参数自动化设置
简单来说就是unity提供一套api去修改xcode项目工程配置以及修改plist文件内容(当unity build结束后, 会自动回调OnPostProcessBuild).以下是一些用到的配置处理:ENABLE_BITCODEAddFrameworkhttpsNSPhotoLibraryUsageDescription [PostProcessBuild]public s...
2018-12-10 17:27:58
1977
转载 【转载】【游戏设计模式】之 《游戏编程模式》全书内容提炼总结
转自浅墨毛星云:http://blog.youkuaiyun.com/poem_qianmo/article/details/53240330这是一篇超过万字读书笔记,总结了《Game Programming Patterns》(中译版《游戏编程模式》)一书中所有章节与内容的知识梗概。我们知道,游戏行业其实一直很缺一本系统介绍游戏编程进阶技巧的书籍,而《游戏编程模式》的出现,正好弥补了这一点。之前已经有提到过...
2018-02-24 09:36:04
299
转载 【转载】汇编学习 安装DOSBOX及debug.exe教程
相信有很多小伙伴跟我一样,在学习汇编时却发现win7 64位系统下是无法使用debug.exe的,因为win7 x64没有debug.exe这个文件,因此需要安装DOSBOX。需要下载地址的可到我的资源中查找。下面开始安装教程:1.下载后解压并安装DOSBOX,最好安装在c盘以外的盘,下面以安装在d盘为例2.将MASM文件夹移到d盘根目录下3.打开DOSBO
2018-01-29 09:33:55
968
转载 【转载】猫都能学会的Unity3D Shader入门指南(二)
关于本系列这是Unity3D Shader入门指南系列的第二篇,本系列面向的对象是新接触Shader开发的Unity3D使用者,因为我本身自己也是Shader初学者,因此可能会存在错误或者疏漏,如果您在Shader开发上有所心得,很欢迎并恳请您指出文中纰漏,我会尽快改正。在之前的开篇中介绍了一些Shader的基本知识,包括ShaderLab的基本结构和语法,以及简单逐句地讲解了一个基本的s
2017-07-22 20:20:22
700
转载 【转载】猫都能学会的Unity3D Shader入门指南(一)
动机自己使用Unity3D也有一段时间了,但是很多时候是流于表面,更多地是把这个引擎简单地用作脚本控制,而对更深入一些的层次几乎没有了解。虽然说Unity引擎设计的初衷就是创建简单的不需要开发者操心的谁都能用的3D引擎,但是只是肤浅的使用,可能是无法达到随心所欲的境地的,因此,这种状况必须改变!从哪里开始呢,貌似有句话叫做会写Shader的都是高手,于是,想大概看看从Shader开始能不能
2017-07-22 18:28:14
443
转载 【转载】Unity ShaderLab学习总结
Why Bothers?为什么已经有ShaderForge这种可视化Shader编辑器、为什么Asset Store已经有那么多炫酷的Shader组件可下载,还是有必要学些Shader的编写?2014-0718-1607-11-33.png因为上面这些Shader工具/组件最终都是以Shader文件的形式而存在。需要开发人员/技术美术有能力对Shader进行功能分析、效
2017-07-22 17:22:29
625
原创 C#的标准容器类
1、内容:List&ArrayList, Dictionary&Hashtable, Stack, Queue; 每一点包括:增、删、查、遍历、排序、其它 关键:研究API,熟练使用 态度:代码中90%的地方用到它们,必须研究精通,熟练使用; 避免容器同时修改、查询,会出现异常;2、List 本质:链表...
2016-06-23 00:19:38
4730
原创 Unity的旋转
1、gameObject的旋转由transform组件统一管理,需要研究透彻它的几个旋转相关的API; 旋转是以物体整体(包括自身坐标系)为单位的,会改变物体位置、朝向,但不会改变物体中各部件的相对位置;2、三要素:旋转轴、旋转方向、旋转角度 旋转轴=定点+轴向量(它是以“定点自身坐标系”来定义的) ...
2016-06-16 01:14:56
2453
原创 View类通用模板(C#)
public class ViceInfoPanel : BasePanel{/////////////////////////////////////////////////////////////////////////////////////////////////////基类虚函数重写/////////////////////////////////////////////
2015-11-15 15:50:16
1062
原创 FastGUI
1、定义:FastGUI是NGUI的附带插件(所以必须先安装NGUI), 用于把PhotoShop制作的PSD(二维界面)生成Unity能识别的prefab, 实质是读文件(PSD)->写文件(prefab)的过程2、最佳学习方法:实践+源代码研究(总共才3000行代码左右,值得去研究学习)3、环境搭配:项目中先导
2015-09-26 19:42:49
1196
原创 【unity优化七】美术资源要求
1、角色模型的优化建议用单个蒙皮渲染、尽量少用材质、少用骨骼节点、移动设备上角色多边形保持在300~1500内(当然还要看具体的需求)
2015-08-03 00:17:31
755
原创 【unity优化六】代码
¥尽量避免每帧处理 1)方案一:每隔几帧处理一次 function Update() { if(Time.frameCount % 5 == 0) { DoSomeThing(); } } 2)方案二:定时重复处理用InvokeRepeating 函数实现 function Start() { InvokeRepeating("DoSomeThing",
2015-08-03 00:09:15
594
原创 【unity优化五】GPU
1、GPU作用:负责整个渲染流水线。它会从处理CPU传递过来的模型数据开始,进行Vertex Shader、Fragment Shader等一系列工作,最后输出屏幕上的每个像素。因此它的性能瓶颈包括顶点、像素、显存等因素有关。2、顶点优化 1)优化几何体 unity-game视图-stats页签可观察三角形数目和顶点数目。 方案:尽可能减少模型中三角形的
2015-08-02 23:45:07
1472
原创 【unity优化四】内存
1、参考并总结:http://www.cnblogs.com/88999660/archive/2013/03/15/2961663.html2、垃圾回收System.GC.Collect():它只针对堆内存,不针对栈内存原因:1.代码分配内存不合理(恶性的) ,2.一定时间间隔由系统调用(良性的)。 后果:会占用大量CPU,影响帧率,造成游戏卡顿方案:1)管理对象,避免
2015-08-02 23:39:30
554
原创 【unity优化三】CPU
1、CPU中的作用:计算。主要是在蒙皮骨骼计算,布料模拟,顶点动画,粒子模拟等,还有在各种顶点变换、光照、贴图混合等。2、CPU过高会造成:卡顿、发热严重3、方案:减少DrawCall(参考博客DrawCall)4、方案:合并纹理(Atlas)虽然批处理是个很好的方式,但很容易就打破它的规定。例如,场景中的物体都使用Diffuse材质,但它们可能会使用不同的纹理。因此,尽可能把多张
2015-08-02 23:37:07
571
原创 【unity优化二】零碎经验集合
1、闪退原因与处理1)内存分配不足,例如IOS上C#代码通过AOT(Ahead of time)编译,而不是JIT(Just in time)。AOT实现反射机制需要预先分配一块内存存类的元数据,当过度使用泛型时导致类元数据过大,,预分配内存不够就闪退抛出2)无限递归导致栈溢出闪退3)程序逻辑出现两个空指针异常导致闪退2、卡顿原因与处理1)GC Collect垃圾回收2)资
2015-08-02 23:32:51
629
原创 【unity优化一】性能检测工具
1、Unity内置分析器Profiler、Xcode分析工具2、“优化”的定位:手机比PC有更多性能瓶颈,对游戏软件有严格要求。项目开发过程中,性能优化是最重要、最艰难、最容易被忽略、最可能导致失败的东西,是程序员提升自己时必须掌握的知识。注重对图形学和引擎内部的了解、实践、思考总结。3、Profiler 1)CPU UsageWaitForTargetFPS:
2015-08-02 23:25:46
5448
原创 贴图、图集的处理
1、基本概念1)美术图片:jpg、png 纹理(Texture)是最基本的数据输入单位,包含了美术图片的数据,游戏领域基本上都用的是位图 贴图(Map)其功能就是把纹理通过 UV 坐标映射到3D 物体表面 材质(Material)它是贴图+一系列属性,是一个数据集,主要功能就是给渲染器提供数据和光照算法2)NGUI中的UISprit
2015-07-21 00:51:45
1085
原创 DrawCall
1、定义:每次引擎准备数据并通知GPU的过程称为一次Draw Call,我们关心每帧的DrawCall次数2、Unity生成一帧画面的处理过程: 首先,经过简单的可见性测试,确定摄像机可以看到的物体 然后,把这些物体的顶点(包括本地位置、法线、UV等),索引(顶点如何组成三角形),变换(就是物体的位置、旋转、缩放、以及摄像机位置等),相关光源,纹理,渲染方式(由材质
2015-07-15 21:47:14
987
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人