Unity开发使用语言还是C#居多(起码川就是用C#用到死的,虽然我对这个语言并不是特别有爱心),所以零零碎碎记录一些常用的代码书写习惯,一来为了看着好看,二来也是为了点点滴滴积累起来程序的性能优势。List的for循环使用相关虽然循环不是个好东西,可是毕竟少不了它。所以这里面有许多可以叨叨的,毕竟一次循环可优化,那么一整套循环走下来,可提升的性能可就不是一半点了。所以先从一个最常见的开始。Lis
Unity函数生命周期Awake > OnEnble > Start > FixedUpdate > Update > LateUpdate > OnGUI > OnDisable > OnDestroyAwake在开始前执行一次OnEnble在脚本开始时执行一次(关闭后再开启依然执行)Start在开始时执行一次FixedUpdate在Update之
转载 2024-05-14 19:37:05
183阅读
首先,对于编辑器中的GUI系统,我们可以分为四大类: 1、UnityEngine.GUI 2、UnityEngine.GUILayout (最常用) 3、UnityEditor.EditorGUI 4、UnityEditor.EditorGUILayout 一.GUI系统这是运用最广泛的GUI系统,所属命名空间UnityEngine,用其
1. 效果预览当角色受到攻击时,为了增加游戏的视觉效果和反馈,可以添加粒子等动画,也可以使用 Shader 实现受击闪白动画:受到攻击时变为白色,逐渐恢复为正常颜色本游戏中设定英雄受击时播放粒子效果,怪物受击时播放闪白动画,效果如下:2 实现方案1 Lit.shader 简介查看怪物的 Inspector,材质使用的 Shader 是 URP 的 Lit.shader。Lit.shader 可让您
本文来自 http://blog.sina.com.cn/s/blog_930ffa0b0102vfg6.html报错Shader error in '': Parse error: syntax error at line 1解决办法: U3D英文官网论坛里有帖子: http://forum.unity3d.com/threads/syntax-error-at-line-1.64004/ 就
转载 2月前
374阅读
      下面我们开始今天的Unity3D技能培训。 我们学习Unity3D培训目标:让U3D初学者可以更快速的掌握U3D技术,自行制作修改素材,可以独立完成2D、3D小规模游戏及网页游戏开发。    今天呢,我们来做一个在游戏中十分重要的组成元素:血条。血条是什么呢?血条是生命值的一种体现,就像《仙剑奇侠传三》电视剧中,当景天说他想让那些被邪剑
转载 6月前
27阅读
Editor文档资料 Unity教程之-Unity Attribute的使用总结:http://www.unity.5helpyou.com/3550.html 利用unity3d属性来设置Inspector面板的特殊行为: http://www.360doc.com/content/15/1205
原创 2021-07-20 17:53:05
787阅读
注意:本节难度激增近况想到什么就想写什么的后果,拖3天了啊!我要哭了,看了两天终于看懂了这个渲染流程的代码,画出个三角形18号就结营了,每天在一群初中生旁边精力真的跟不上图形渲染管线简介开始之前,先记住以下三个单词:顶点数组对象:Vertex Array Object,VAO顶点缓冲对象:Vertex Buffer Object,VBO索引缓冲对象:Element Buffer Object,EB
【前言】 当我们谈及Unity内存管理时,我们更多的是在说手游项目上如何更好的去管理内存,如果是在端游项目上,没有那么多讲究,内存随便用。【为什么手机上内存不够用】CPU读写速度远快于内存的速度,大多数时候CPU都在等内存给数据,为了缓解主存速度慢、跟不上CPU读写速度要求的矛盾,进而提高程序运行效率,CPU设计时引入了高速缓冲存储器。在PC中,CPU一般有三级缓存 ,大小共8
本文重点: 1、创建复合形状 2、每个形状支持多个颜色 3、为每个生成区选择工厂 4、保持对形状原始工厂的追踪 这是有关对象管理的系列教程中的第八篇。它介绍了与多个工厂合作的概念以及更复杂的形状。本教程使用Unity 2017.4.12f1制作。 更多形状、更多工厂、更多变化 1 更多形状立方体,球体和胶囊
Good Practice普通的Public变量可以在inspect里显示,变量是可以在inspect里赋值并realtime反映在被attach到的GameObject上的。注意经典public property的写法,在inspect里不会显示You can't new MonoBehaviour, or override MonoBehabiour基类,不可以override St
转载 6月前
69阅读
Awake ->OnEable-> Start -> FixedUpdate-> Update  -> LateUpdate ->OnGUI ->OnDisable ->OnDestroy  Awake() 中放Start 函数中的声明部分OnEnable() 中放Start函数内的协成 1.Awake游戏开始
类对象池包含创建对象池,取对象池中的内容,回收。using System.Collections; using System.Collections.Generic; using UnityEngine; public class ClassObjectPool<T> where T : class, new() { /// <summary> /// 偏
Editor Style Viewer 在开发过程中,我喜欢编写一些辅助的Editor插件,方便在游戏开发过程进行调试。 下面是摘自Asset Store的一个查看Unity 默认GUI样式的小工具 插件链接:Editor Style Viewer https://www.assetstore.un
原创 2021-07-20 16:38:28
662阅读
UnityEditorWindow学习笔记了解EditorWindow的生命周期:OnEnable():当打开界面的时候调用 OnFocus():当该窗口被聚焦(点击该窗口) OnGUI():当渲染UI的时候调用 OnSelectionChange():当选择发生更改时调用,选中的可选项(在Project和Hierarchy视图中) OnLostFocus():从该窗口离开时调用(点击非窗口外其他
前言上一篇中我们讨论了顶点片断着色器,如果是刚刚接触Shader的话肯定还是会有很多的疑惑,那么这篇呢就是来详细讨论下其中的疑惑之一,变量的相关问题。Cg/HLSL中的数据类型在Shader中,我们在Properties中定义的变量是为了在材质面板中显示并方便我们调节,如果要在Cg/HLSL中使用的话就必须要重新声明一次(要求命名一样)。 To美术:声明的意思就是定义一个变量,告诉电脑我们会用
Unity EditorTool Dev Tutorial(一)最近,公司项目新开,要笔者写一些给策划用的工具,对Unity有了解的朋友肯定知道Unity的插件工具是十分丰富的,提供的API能让开发者自定义工具。于是作为小白的笔者,也一股脑扎进了工具开发的漩涡中。发现关于Editor的基础教程,在国内非常少,于是,笔者便有了记录学习Editor的想法。本文将持续记录笔者从零搭建工具的所见所闻。前言
Unity在5.6之前的版本中并未提供很直接的方式来查找Draw Call未被批处理的原因,但Unity 5.6在Frame Debugger中新增了一项功能,帮助开发者查找相关信息。今天这篇文章就为大家分享,在Unity 5.6中如何查看Draw Call未被批处理的原因。相信大家都知道,Unity内置的动态与静态批处理有助于减少游戏中的Draw Call数量。在Stats窗口中,当“Saved
孙广东  2015.7.8在将图片导入Unity后 做的一些设置常常会得到警告信息。所以要了解一下这些设置。D:\Program Files\Unity5\Editor\Data\Documentation\en\Manual\class-TextureImporter.htmlSprite (2D and UI)选择导入到Unity中的Texture纹理。在Inspector面板上显示
转载 8月前
91阅读
我相信无数初学者看别人游戏都经常看到他们的Inspector中出现界面和默认不同,但又不知道怎么弄出来的.下面我粗略介绍一下如何自定义这些.   MenuItem属性把任意静态函数变成为一个菜单命令。仅静态函数能使用这个MenuItem属性。 用法:一般在Editor文件夹里创建代码,代码归类 [MenuItem("My
  • 1
  • 2
  • 3
  • 4
  • 5