创建场景

在这里插入图片描述
保存场景,命名为main_scene

创建gameobject

在这里插入图片描述
在这里插入图片描述

创建材质,用于给gameobject上色

在这里插入图片描述

拖拽材质球上色

在这里插入图片描述

上色原理

在这里插入图片描述

设置多个材质方式

在这里插入图片描述

设置贴图的方式

在这里插入图片描述

效果

在这里插入图片描述

设置光滑度

在这里插入图片描述

创建材质文件夹,用于统一管理使用到的材质
在这里插入图片描述
点击game窗口,看到的就是main camera看到的场景

一些预览设置菜单

在这里插入图片描述
在这里插入图片描述
类似上述操作,再创建一个小球,并上色,效果如下:
在这里插入图片描述

渲染模型与碰撞模型

渲染模型和碰撞模型分来的原因:节省性能,例如一个球模型本身有很多点,在进行计算碰撞时会增大计算的复杂度,而使用mesh中的标准球网格,只需要,计算是否在半径内判断碰撞即可,可以提高性能,所以一般对于导入的模型会设置其简模(sphere collider)

网格渲染参数

在这里插入图片描述
参数详解:
在unity中,mesh renderer组件用于将网格(mesh)渲染到屏幕上,他负责管理网格的可视化特性,包括材质、光照、阴影等

1. materials(材质)

  • 描述:用于指定应用于网格的材质,可以为一个网格分配一个或多个材质,每个材质对应网格中的一个子网格(submesh)
  • 默认值:单一材质

2. lighting(光照)

  • 描述:
    • cast shadows(投射阴影):控制网格是否投射阴影,选项如下:
      • on(开启):网格会投射阴影
      • off(关闭):网格不会投射阴影
      • two sided(双面):网格的两面都会投射阴影
      • shadows only(仅阴影):网格的两面都会投射阴影
      • receive shadows(接收阴影):控制网格是否接收其他对象投影的阴影
      • motion vectors(运动向量):控制网格是否在运动时生成运动向量,这对于后期特效(如运动模糊)非常有用
      • dynamic occlusion(动态遮挡):控制网格是否参与动态遮挡计算
  • 默认值:根据光照设置

3. reflection probes(反射探针)

  • 描述:控制网格如何使用反射探针来反射环境,选项包括:
    • off(关闭):不使用反射探针
    • blend probes(混合探针):使用反射探针,并混合相邻探针的结果
    • blend probes and skybox(混合探针和天空盒):混合反射探针和天空盒的结果
    • simple(简单):简单使用最近的反射探针
  • 默认值:blend probes

4. light probes(光照探针)

  • 描述:控制网格如何使用光照探针来模拟光照,选项包括:

    • off(关闭):不使用光照探针
    • blend probes(混合探针):使用光照探针,并混合相邻探针的结果
    • use proxy volume(使用代理体积):使用光照探针代理体积
  • 默认值:blend probes

5. lightmap settings(光照贴图设置)

  • 描述:控制网格如何使用光照贴图
    • lightmap static(光照贴图静态):控制网格是否为光照贴图静态对象,静态对象会在光照贴图烘焙时考虑
    • lightmap index(光照贴图索引):指定网格使用哪个光照贴图
    • lightmap scale offset(光照贴图缩放偏移):控制光照贴图在网格上的缩放和偏移
  • 默认值:根据光照贴图设置

6. scale in lightmap(光照贴图中的缩放)

  • 描述:控制网格在光照贴图中占用的空间比例,较大值意味着网格在光照贴图中占用更多的空间
  • 默认值:1

7. receive GI(接收全局光照)

  • 描述:控制网格是否接受全局光照,全局光照是指来自所有方向的光照,通常用于模拟间接光照
  • 默认值:开启

8. motion vectors(运动向量)

  • 描述:控制网格是否生成运动向量,运动向量用于后期特效,如运动模糊
  • 默认值:开启

9. dynamic occludee(动态遮挡)

  • 描述:控制网格是否作为动态遮挡对象,动态遮挡对象会在运行时进行遮挡计算
  • 默认值:开启

10. dynamic occluder(动态遮挡器)

  • 描述:控制网格是否作为动态遮挡器,动态遮挡器会在运行时遮挡其他对象
  • 默认值:开启

11. static editor flags(静态编辑器标志)

  • 描述:控制网格是否被视为静态对象,静态对象在光照贴图和全局光照烘焙时使用
  • 默认值:未勾选

12. rendering layer mask(渲染层遮罩)

  • 描述:控制网格的渲染层,渲染层用于在不同的渲染通道中控制对象的可见性
  • 默认值:默认层

简模碰撞参数

在这里插入图片描述
radius:设置碰撞的半径
在这里插入图片描述
参数详解:
在unity中,sphere collider组件用于为游戏对象添加一个球形碰撞器,这个碰撞器可以用于检测物理碰撞,或作为触发器(trigger)来检测其他对象进入或离开该区域

1. is trigger(是否为触发器)

  • 描述:如果勾选,这个碰撞器将被视为触发器而不是物理碰撞器,触发不会产生物理碰撞,但可以检测其他对象进入或离开其区域
  • 默认值:未勾选

material(材质)

  • 描述:用于指定碰撞器使用的物理材质(physics material),物理材质用于控制摩擦力和反弹效果
  • 默认值:None

3. center(中心)

  • 描述:球形碰撞器的中心位置,相对于游戏对象的变化中心,可以通过调整中心来控制碰撞器在对象内部的具体位置
  • 默认值:0,0,0

4. radius(半径)

  • 描述:球形碰撞器的半径,半径越大,球形碰撞器的体积越大
  • 默认值:0.5米

5.edit collider(编辑碰撞器)

  • 描述:勾选此选项后,可在场景视图中直接编辑碰撞器的位置,大小和形状,这对于快速调整碰撞器非常有用
  • 默认值:未勾选

6. include layers(包含层级)

  • 描述:此选项用于指定碰撞器应该与哪些层的对象进行碰撞,如果设置了包含层级,只有在这些指定层中对象才会参与物理碰撞检测
  • 使用场景:
    • 该功能可以用于优化碰撞检测,避免与不必要的对象进行碰撞,例如:如果若游戏只需要某些特定类型的对象能够与该碰撞器发生碰撞,可将这些对象放入一个或多个指定层级中
    • 通过使用层,能够更容易的管理对象间的交互,尤其是在复杂的游戏场景中

7. exclude layers(排除层级)

  • 描述:用于排除特定层级的对象不被这个碰撞器检测,只有非排除层级的对象才会与这个碰撞器发送碰撞
  • 默认值:none

其他类型的碰撞器组件

在这里插入图片描述

刚体组件rigidbody-模拟物理效果

添加刚体组件

在这里插入图片描述
在这里插入图片描述
在unity中,刚体组件(regidbody)是用于模拟物理行为的组件之一,它使得游戏对象能够受物理引擎的控制,如重力、碰撞和外力等

1. mass(质量)

  • 描述:对象的质量,较大的质量意味着对象需要更大的力来移动或停止
  • 默认值:1

2.drag(阻力)

  • 描述:对象在空气中或液体中移动时的阻力,阻力越大,对象移动的速度下降得越快
  • 默认:0

angular drag(角阻力)

  • 描述:对象旋转时的阻力,角阻力越大,对象旋转的速度下降得越快
  • 默认值:0.05

4. use gravity(使用重力)

  • 描述:是否让对象受到重力的影响
  • 默认值:勾选

5. is kinematic(是否为运动学)

  • 描述:是否将对象设置为运动学刚体,运动学刚体不受物理引擎控制,但可以通过脚本手动移动
  • 默认值:未勾选

6. interpolate(插值)

  • 描述:用于平滑对象的运动,当对象运动时有抖动或不平滑时,可以选择以下选项:
    • none(无),不进行插值
    • interpolate(插值):基于上一帧的位置进行插值
    • extrapolate(外推):基于下一帧的预测位置进行插值
  • 默认值:none

7. collision detection(碰撞检测)

  • 描述:用于控制对象的碰撞检测方式,以避免高速移动时的穿透现象,选项包括:
    • discrete(离散):标准的碰撞检测方式
    • continuous(连续):用于检测与静态网格碰撞器的碰撞
    • continuous dynamic(连续动态):用于检测与动态和静态网格碰撞器的碰撞
  • 默认值:discrete

8. constraints(约束)

  • 描述:用于限制对象的移动和旋转
    • freeze position(冻结位置):限制对象在xyz轴上的移动
    • freeze rotation(冻结旋转):限制对象在xyz轴上的旋转

9. center od mass

  • 描述:对象的质心位置,通常不需要手动设置,但如果对象的形状不规则,可能需要调整以获得正确的物理行为
  • 默认值:自动计算

10. angular velocity(角速度)

  • 描述:当前对象的角速度,可通过脚本访问和修改
  • 默认值:0,0,0
Logo

助力广东及东莞地区开发者,代码托管、在线学习与竞赛、技术交流与分享、资源共享、职业发展,成为松山湖开发者首选的工作与学习平台

更多推荐