第五课时item
public int ID{get;set; }:方便访问权限
属性类名一般大写
注意:enum的访问权限问题
第五课时item
public int ID{get;set; }:方便访问权限
属性类名一般大写
注意:enum的访问权限问题
牛逼,竟没有卡成狗
解决UI和3D物体同时响应的问题。
在ColliderUI代码里面加上:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.EventSystems;
using UnityEngine.UI;
public class ColliderUI : MonoBehaviour ,IPointerClickHandler{
private int _index;
// Use this for initialization
void Start () {
}
public void ChangeColor()
{
if (_index == 0)
{
GetComponent<Image>().color = Color.blue;
}
else {
GetComponent<Image>().color = Color.white;
}
_index = _index == 0 ? 1 : 0;
}
public void OnPointerClick(PointerEventData eventData)
{
ChangeColor();
// ExecuteAll(eventData);
}
public void ExecuteAll(PointerEventData eventData) {
List<RaycastResult> results = new List<RaycastResult>();
EventSystem.current.RaycastAll(eventData, results);
foreach (RaycastResult result in results) {
if (result.gameObject != gameObject)
{
ExecuteEvents.Execute(result.gameObject, eventData, ExecuteEvents.pointerClickHandler);
}
}
}
}
···
方向光和点光源有cookie
其他的光没cookie
延迟渲染先从屏幕空间转齐次裁剪空间,再转世界空间
代码中赋值的时候有点问题
//contentLength = scrollRect.content.rect.xMax-2*leftOffset-cellLength;
//contentLength = 3000-2*300*-1100=1300;
//oneItemLength = cellLength + spacing=1100+400=1500;
oneItemProportion = oneItemLength / contentLength;
这样的话oneItemProportion就始终大于1了。移动的时候要么就是第一页,要么就是最后一页。
我手动把oneItemLength改成2000.oneItemLength改成1000后就没问题了
我脚本搭载到ScrollView上的
下节课客户端NetMsgCenter脚本Awake方法里面的clientPeer定义成全局的!!
感觉成员变量多的不行了
总感觉成员变量重复了很多,哭了
单元测试
在unity中创建(Create/Testing/c# Test Scripts)
断言(Assert)
开发、课程管理
内容:
技术点:
引导:
无论是 lua 系列热更 还是 C# 系列热更,ILRuntime,他们都是基于代码的热更。
网格重建,如果在同一个canvas下创建了很多的UI面板,修改其中一个image的颜色,都会重建所有的网格
渲染队列的概念
UI为什么会费性能
首先,透明物体最重要的概念是,不会写深度,正常物体在深度写入后会起到优化的作用,因为系统会先渲染前面的物体,而后面被遮挡的物体则不会再进行渲染,半透明物体一般是从后向前渲染,会先将后面渲染一次,再将半透明物体渲染一次(也就是OverDraw增加的原因)
UI系统生成的东西全都是从后向前的渲染,所以UI会存在优化的原因,当我们有大量的UI时,就需要进行优化。
怎么优化?
渲染队列的概念是什么?
1、做UI优化必然会牵扯到渲染
概念一 深度测试
前后关系,两个模型的深度分别是怎么样的
缓冲区:颜色缓冲区保存颜色,深度缓冲区保存深度(和相机的距离)
Zwrite on(深度写入)
ZTest Alway(深度写入)alway代表一直写入
两种常见mask实现方式
一种就是常见的Rect2DMask
二是Mask部分,实现效果是模板缓存(Stencil)
解决错误,在话题里面点击提问
GameStateInfoUI
GameFacade