文章目录一、血条和蓝条的状态二、 画布设置1、画布的三种渲染状态2、画布的三种模式三、 圆头像的实现四、UI接口事件五、角色碰撞器六、单例私有七、字典的使用八 、碰撞指定物体时会触发该物体的回调函数九、清除所有子项的父级十一、Random十二、刚体十三、函数的内部的临时变量十四、动画的融合术十五、Outline组件十六、利用委托舔加方法十七、鼠标图标十八、URP渲染管线常用工具1、Shader
动机新开了一个专栏来写一些游戏开发的教程文章,写这些文章的初衷是教会我老婆做游戏开发,我老婆也是个程序员,我也是几年前才开始转向游戏开发方向,在学习的过程中即使拥有多年普通客户端的开发经验,也仍然感觉到自己一个人琢磨去学习的难度曲线很高,中间在公司内部出过一些基础教程文章,还是比较受欢迎,因此也间接的促成了我想要开设这样一个专栏专门系统的功利的讲一下如何学习游戏开发。因为专栏文章可能会越来越多,所
本人刚接触Unity,今天跟着官方的视频教程做了一个简单的Roll a Ball案例。当然网上已有很多案例教程且写的很好,但我还是想把自己学习到的内容写下来也方便以后自己回顾。知识点:1:创建游戏物体时要记得Reset,养成良好的习惯。2:物理逻辑的代码要放在FixedUpdate中,相机跟随主角要写在LateUpdate中。关于区别这个网址里的内容我认为说的很详细3:Unity中的物理引擎工作流
转载 2024-04-28 08:23:10
45阅读
Unity3D最初是一个3D游戏引擎,而从4.3开始,系统加入了Sprite组件,Unity也终于有了2D游戏开发的官方解决方案。4.6更是增加了新的UI系统uGUI,使得使用Unity开发2D游戏效率非常高。那么对于从事2D游戏开发的同学来说,想必都曾经遇到过2D元素渲染的选择问题。大家都知道,Unity可以将导入的图片分割为若干Sprite,然后通过SpriteRenderer组件或者uGUI
转载 2024-04-05 11:02:34
51阅读
这两天,在弄发布APK,装了下jdk和sdk,jdk安装下去倒是没什么问题,但是安装sdk的时候却装了好多遍都错误,还下载了几十G的资源,就很烦躁。每次都报下面这个错误,但是我安装的还是最新版的sdk,还报这个错误,重新下载25.0.0的版本也会报这个错误,最后发现只要点击下面的Use highest Installed就可以一样的发布APK项目。下面就是重点,从jdk到sdk的安装。第一步 :下
解释:Prefabs(预设)是一种资源类型,可被重复使用的游戏对象。它可以被置入多个场景中,又或者能够在一个场景中被多次置入。当你在一个场景中增加一个Prefabs,你就实例化了一个Prefabs。所有Prefabs实例都是Prefab的克隆,只要Prefabs原型发生改变,所有的Prefabs实例都会产生变化。Prefabs的用法:如果大家要创建一些想要重复使用的东西,那么就该用到它了。接下来我
转载 2024-09-20 16:57:14
52阅读
 单例模式:(singleton pattern),简单说即类的实例在内存中只有一个;简单两种类型的总结如下:       I.写一个脚本,然后将这个脚本拖放到场景中某个对象身上,千万注意只拖一次到场景中,我们知道,一旦将脚本托给场景中某个对象,         就变成脚本组件,组件就是对象,因此这
创建对象的方式new:最常见的方式变形1:单例模式,静态方法getInstance()变形2:工厂模式,静态方法xxxBuilder/xxxFactory Class的newInstance():反射的方式,只能调用空参构造器,权限必须是public(jdk9中过期,比较局限) Constructor的newInstance(xxx):反射的方式,可以调用空参、带参的构造器,权限没有要求(推荐使用
转载 2024-02-20 11:11:15
46阅读
前言自Unity2019之后Unity将UGUI模块从内置库修改成了通过PackageManger引入的方式。Image就来源于com.unity.modules.imgui模块。其实代码大体代码跟2018是一致的,但是还是有些细微差别,Image透明度点击不命中就是2019之后才有的问题,2018版本是没有这个问题的,我都怀疑是开发人员抄代码没抄全。首先这个点击不命中是在你使用图集的方式打包UI
章节列表:一、从Asset Store中下载资源并导入二、设置相机投影模式(Projection)三、创建背景(BackGround)四、设置灯光(Lighting)五、创建玩家对象(Player) 一、从Asset Store中下载资源并导入首先我们新建一个工程,然后点击Window->Asset Store,搜索Space Shooter,找到如下资源:点击资源进入资源详情,点
转载 2024-05-16 05:03:29
234阅读
一、过程  Person p = new Person();  1,JVM会去读取指定路径下的Person.class文件,并加载进内存,    并会先加载Person的父类(如果有直接父类的情况下)  2,在堆内存中开辟空间,分配地址。  3,并在对象空间中,对对象中的属性进行默认初始
转载 2023-11-29 10:10:00
38阅读
    知识回顾:     编译: Java源码经编译器编译后成为二进制字节码文件(*.class文件)。     加载:当要使用时将磁盘上的.class文件移入进内存。     运行:由JVM翻译成操作系统可识别的二进制机器码,再在JRE
转载 2023-09-19 09:28:08
67阅读
一、对象池概念对象池模式并不是游戏开发独有的设计模式,它的设计思路与其他开发中的数据库连接池、线程池的思路等是一样的。其核心思想是,使用完不直接删除,而是将其放回池子里,需要用的时候再取出来。 对象池模式的出现主要优化两点: 1、防止对象被频繁的创建和删除,从而内存抖动、频繁GC(垃圾回收)2、对象初始化成本较高但是因为传统软件开发的对象通常都是轻中里量级的, 分配/释放对象的开销可以忽略不计,所
JAVA类,只要知道了类名(全名)就可以创建其实例对象,通用的方法是直接使用该类提供的构造方法,如NewObject o = new NewObject(); NewObject o = new NewObject("test"); NewObject o = new NewObject(new String[]{"aaa","bbb"});除此之外,还可以利用java.lang.Class&lt
转载 2010-06-23 10:51:00
124阅读
对象给类里的属性赋值类的属性封装 就是 开闭空间数组  然后每个空间都 可以放一个对象产生的值 语法:  类名字[ ]   变量名=new 类名字[大小];也就是实例 加个数组形式列: 类的属性[]      stus=new 类的属性[2]; 输出属性数组的方法:上面已经实例化了所以不
转载 2019-06-10 21:09:00
205阅读
   编译并运行该程序会有以下输出 Static Block Employee Company:china soft Non-Static Block Employee phone:0755-51595599 Employee(String) Empoloyee() 下面我们来对结果做分析: 1 在代码34行实例对象时, 先对给静态变量分配内存空间并初始,然后执行静态块。
转载 2023-08-19 23:20:16
67阅读
首先引出一个问题,是在其他博客上看到的,在这里也分享给大家。public class Parent{ public void test() {} public Parent(){ test(); } public static void main(String[] args){ new Child(); }
转载 2023-06-20 16:33:12
129阅读
这里一共整理了四种方法①用类的new ()创建②用clone方法创建, 需要类实现 Cloneable 接口③通过反射机制创建④将一个对象实例后,进行序列,再反序列下面是实现代码 1)用类的new ()创建User user = new User();2)用clone方法创建, 需要类实现 Cloneable 接口 User user2 = (User) user1.clone()
转载 2023-06-22 21:48:16
118阅读
Java对象实例过程一. 首先去JVM 的方法区中区寻找类的Class对象,如果能找到,则按照定义生成对象,找不到则加载类;二. 加载类定义:类加载器(ClassLoader)寻找该类的 .class文件,找到后对文件进行分析转换为Class对象存入方法区方便以后调用。其中jdk 的class一般是在JVM启动时用启动类加载器完成加载,用户的Class则是在用到的时候再加载。Java中Clas
前面我们介绍了怎么定义一个类,但是我们要使用类中的属性和方法并不像使用变量和函数那样简单,首先要对类进行实例才行,下面就来详细介绍一下。实例对象将类实例化成对象非常容易,只需要使用new关键字并在后面加上一个和类名同名的方法即可。当然如果在实例对象时不需要为对象传递参数,在new关键字后面直接用类名称即可,不需要再加上括号。对象实例格式如下:变量名 = new 类名(参数数列表);或变量
  • 1
  • 2
  • 3
  • 4
  • 5