12 2018 档案
摘要:最近在学习UI框架,无奈没有完整的项目学习,四处搜索找了这款游戏源码,在Unity2018上完美运行。于是乎开始学习开发这款游戏。今天主要完成的任务时拼UI。搭建了3个场景, StartScene, LoadingScene, MainScene。PlayScene比较复杂,包含了复杂的逻辑,放在最
阅读全文
摘要:今天的主要任务是完善NormalPanel, 搭建PopupPanel。 在编写PanelManager的过程中,发现了一个bug。昨天把panelPath直接传给了ResourceManager.GetInstance().LoadAsset<GameObject>(path); 今天做了修改,并
阅读全文
摘要:分析:UI框架主要是为了用户(使用框架的程序猿)更快捷、方便地开发UI,UI框架的好处还在于解耦,使得程序更具有灵活性。 UI框架的核心是窗口的管理,窗口管理的主要任务就是显示窗口和关闭窗口。 因为窗口的类型多样,比如弹出式窗口,固定位置窗口,隐藏其他窗口(打开这个窗口会覆盖整个屏幕),模态窗口等等
阅读全文
摘要:1.正弦函数 y=Asin(ωx+φ) 其中A表示振幅,w表示频率,φ是初相,ωx+φ是相位。 要想产生波动效果,只需要改变平面的顶点位置即可。 2.编写Shader 创建一个 Image Effect Shader。 修改顶点函数中的代码。 其中_Speed用来控制波动的速率,_Amplitude
阅读全文
摘要:题目是这样的: Observe that its base and height are both equal to , and the image is drawn using # symbols and spaces. The last line is not preceded by any s
阅读全文
摘要:需要播放淡入效果时,在外部调用该类的StartFadeIn方法;需要播放淡出效果时,在外部调用该类的StartFadeOut方法。
阅读全文
摘要:1.新建一个空物体,命名为parent设置坐标为(3, 0, 0) 2.在parent下新建一个cube,设置坐标为(3, 0, 0) 给cube添加一个Test脚本,在Start方法里添加如下代码 运行输出结果为: transform.position(6.0,0.0,0.0) transform
阅读全文
摘要:POSITION: 获取模型顶点的信息。NORMAL: 获取法线信息TEXCOORD(n): 高精度的从顶点传递信息到片段着色器COLOR: 表示低精度从顶点传递信息到片段着色器TANGENT: 获取切线信息。SV_POSITION: 表示经过mvp矩阵已经转化到屏幕坐标系SV_TARGET: 输出
阅读全文
摘要:1.语法 SetTexture [TextureName] {Texture Block} 2.Texture block combine 命令 combine src1 * src2 越乘越暗 combine src1 + src2 越加越亮 combine src1 lerp(src2) src
阅读全文
摘要:arr = {11, 2, 4, 4, 5, 6, 10, 8, -12} function diagonalDifference(arr) dimesion = math.sqrt(#arr) arr1 = {} sum1 = 0 arr2 = {} sum2 = 0 for i=1,dimesion do ...
阅读全文
摘要:先上效果图 图片资源来自http://www.51miz.com/ 1.素材准备 在http://www.51miz.com/搜索png格式的数字图片,用Unity自带的图集制作工具,进行分割。Container是一个Image,很简单就不细说了。 2.素材准备好,就制作UI了。 3.前戏做好就可以
阅读全文
摘要:1 public class View_LoadingScene : MonoBehaviour 2 { 3 //场景加载进度条对象 4 public GameObject loadingProgressBar; 5 //进度条组件 6 private Slider _loadingProgressBarComp...
阅读全文
摘要:1.GameObject.Find 函数原型: public static GameObject Find(string name); 说明:1.GameObject只能查找到active的物体 2.如果name指定路径,则按路径查找;否则递归查找,直到查找到第一个符合条件的GameObject或者
阅读全文
摘要:1 --第4题 输出99乘法表 2 function PrintMulitiplyTable() 3 for i = 1, 9 do 4 local res = {} 5 local str = "" 6 for j = 1, i do 7 res[j] = i * j 8 ...
阅读全文
摘要:1 --第3题 利用循环求n的阶乘 2 --参数检查是否是自然数 3 4 function IsNaturalNumber(n) 5 if(n < 0 or n%1 ~= 0)then 6 return false 7 else 8 return true 9 end 10 end 11 function factor...
阅读全文
摘要:元表操作的一般流程 1.定义原始表 2.定义元表 3.定义元方法 4.设置元表
阅读全文
摘要:理论:由于ArrayList存储数据存在装箱(读取数据存在拆箱),而泛型List<T>直接对T类型数据进行存储,不存在装箱与拆箱拆箱操作,理论上速度应该快一些。 废话少说,上代码。 输出结果ArrayList进行1亿此装箱操作耗时9秒多,而List<T>泛型直接存储数据不到1秒,性能高下立见。
阅读全文
摘要:1 local array = {}; 2 local row1 = {1, 3, 5, 7, 9} 3 local row2 = {2, 4, 6, 8, 10} 4 local row3 = {"I", "love", "lua"} 5 array[1] = row1; 6 array[2] = row2; 7 array[3] = row3 8 print("length ...
阅读全文
摘要:新建一个Test 类,添加一个方法Test1(),添加如上代码,在main方法中调用。 输出结果为:count = 3 capacity = 4 如果length = 0,输出结果为 count = 0 capacity = 0 如果length = 1,输出结果为 count = 1 capaci
阅读全文
摘要:乍一看输出的都是true,==的作用都是一样的,其实不然。再看一个案例。 为什么会出现这种“诡异”的情况呢? 1.==如果比较的对象是值类型,实际上比较的是对象的内容。由于由于string是特殊的引用类型(新定义的对象内容如果与之前的对象内容个相同,CLR把新对象地址直接指向之前的地址),所以案例一
阅读全文
摘要:通过代码可以得出结论: 1.ipairs函数遇到nil停止输出 2.把ipairs换成pairs 发现,输出结果是1 3 5 7 9,得出结论pairs会过滤到nil 3.select(index,...)函数的作用是返回从第i个开始的所有元素,并且会输出nil
阅读全文
摘要:参数含义:ABURL:要下载的AB包地址 go:用于测试,显示加载贴图 assetName:要加载的资源名称 (在调用之前要对参数初始化)
阅读全文
摘要:1.准备打包资源,给要打包的资源添加一个AssetBoundle名字 2.在Scripts文件夹下新建一个子文件夹,命名为Editor(注意名字不能写错),新建一个打包资源的C#类,命名为BuildAssetBoundle(不用继承MonoBehaviour) 3.通过代码添加StreamingAs
阅读全文