遮挡剔除这节感觉siki老师说错了,老师演示的不是遮挡剔除的真正功效,而是视锥体剔除。
视锥体剔除:只渲染视锥体内物体,视锥体外不渲染。任何一个普通的camera都带有视锥体剔除的功能,而且与物体是否static无关。
遮挡剔除:近处大物体完全遮挡住远处的小物体,则对远处小物体的渲染时无用的,所以遮挡剔除远处小物体,这里要求物体static属性最少为Ocludder Static。
遮挡剔除这节感觉siki老师说错了,老师演示的不是遮挡剔除的真正功效,而是视锥体剔除。
视锥体剔除:只渲染视锥体内物体,视锥体外不渲染。任何一个普通的camera都带有视锥体剔除的功能,而且与物体是否static无关。
遮挡剔除:近处大物体完全遮挡住远处的小物体,则对远处小物体的渲染时无用的,所以遮挡剔除远处小物体,这里要求物体static属性最少为Ocludder Static。
36-38
Mac平台下
1.学习unity必定要高强度连续的集中精神,因此我每次开始新的课程之前应该把5-10个课时为一个单元进行连续学习。切记学习一定要全神贯注。
2.自己可以开一个blog天天记录自己的学习状态与案例
3.一定要坚持觉得无聊时候也要坚持
4.
1.new Android Library
2.在library下空文件夹new empty勾选Launcher Activity
3.删除activity_main.xml布局文件,在MainActivity.java里删除控制输出显示的代码段setContentView(R.layout.activity_main);
Input.GetMouseButton(0)
Input.GetAxis("Mouse X")
Input.GetAxis("Mouse Y")
在pc端和手机端都有有效,但容易带来隐患
//按机器上的返回键是否退出引用,默认false
input.backButtonLeavesApp=ture
向量点积可用于求一个向量在另一个向量上都投影,以及两向量间的夹角。在物理中表示力所做的功:W=|F||S|cosθ
叉积得到的向量是垂直于原来的两个向量(一个平面的法向量),长度为|a||b|sinθ。
Vector3.Cross返回两个向量的叉积。
Vector3.Dot返回两个向量点积;
Vector3.Angle返回两个向量夹角
Vector3.magnitude返回向量的长度;
Vector3.sqrMagnitude返回向量长度的平方;
Vector3.Distance返回两点之间的距离
关于transform.forward:
1.Space.World:世界坐标改变一定角度(物体被旋转的角度)后的Z轴
2.Space.Self:局部坐标改变一定角度后(物体被旋转的角度)后的Z轴
对于aithree的小结:
我们首先要知道我们的启动函数是什么?是playChess()。接下来就是对对于棋的整个流程的说明。
首先我们应该创建一个父节点(结点的成员变量有颜色,位置,子节点,值)然后通过foreach对子节点进行遍历取得最大值,其中我们还要通过alphabeta对树进行剪枝,以便减少计算量,最后让chessboard中的playchess生成棋子。
一父结点
就是创建一个类,并声明成员变量
二子节点Getlist() 我们在这个方法中首先应该创建一个放置兄弟结点的集合,然后在定义一个空的子结点。通过forr看看当前的位置是否可以放子,如果不行的话,就从来;如果可以的话就构建子结点。接着判断子集合中的个数是否为4(因为我们已经规定子结点的个数为4),不够加,够就判断是否为我方,我方寻找最大值;敌方需要最小值。经过筛选后返回集合。
三 创建树一给成员grid chid赋初值chid
开闭原则:一个软件实体应当对扩展开发,对修改关闭。
CheckOneLine()作为一个判断函数大概的意思是这样的:我们首先确定扫棋的方向,是用左边lfirst,接着就是安全校验了,接着就是获取当前的棋子,判断它到底是什么类型的,是同类型的就+a,是空子就加_这个就说明扫棋已经碰壁了,我,们就要启动让右边扫的工作了,同时结束左边;是异子就也是要停止当前,向右边扫。总之结束左边的情况就三种:空子,异子,和出界。
右边也是一样
左边两个标志为 lfirst lstop
右边一个标志位 r'stop
Pixels
256
ProcessOn
MeshFilter
CombineInstance[] 来得到MeshFilter []中的Mesh
用CombineMeshes得到CombineInstance[]中的Mesh