Unity的阴影 一条光线遇到一个不透明物体就不可以继续照亮其他物体,因此这个物体就会向该方向的物体投射阴影。实时渲染中使用一种ShadowMap技术,首先把相机的位置放置光源的位置,阴影区域就是摄像机看不到的地方。unity会为光源计算其阴影映射纹理,本质上是一张深度图,用一个额外的pass专门更新映射纹理而非在bass/additional
转载
2024-03-28 13:54:22
274阅读
一:效果演示二:思路——使用SkinnedMeshRenderer类中的BakeMesh去复制出新的Mesh——再使用Graphics.DrawMesh绘制会Mesh
原创
2021-07-13 15:53:43
1334阅读
一:效果演示二:思路——使用SkinnedMeshRenderer类中的BakeMesh去复制出新的Mesh——再使用Graphics.DrawMesh绘制会Mesh三:核心代码实现——为每个残影创建残影数据类注意必须继承自Object类,因为每个残影数据需要被Destroy——创建残影并加入到残影列表中注意必须设置为RenderingMode为Fade——绘制残影遍历残影列表中的所有残影,如果超出了残影的持续时间则销毁并从残影列表中移除,如果没有超出了残..
原创
2022-01-25 13:44:39
1467阅读
Shader "Custom/GhostOnly_Transparent" { Properties { _MainT
原创
2022-11-01 10:57:05
231阅读
目录前言P1P2前言什么是阴影当片元到光源路径上出现不透明物体时,该片元处于阴影状态。P1平面投影阴影根据光的方向,利用相似三角形,把物体的每个顶点投影到平面地面上。缺点只能投影到平面。投影物体必须在光线和平面之间。步骤:为每个阴影投影体设置一个相机。把阴影投影体渲染到阴影纹理中。渲染阴影接收者,并且与阴影纹理进行混合。阴影映射(Shadow Map)在灯光位置放一个摄像机,生成这个摄像机的深度图
Unity中的半透明阴影 在Unity中渲染半透明阴影可以使用Unity提供的dither texture。在这之前,先考虑一般半透明物体的渲染流程:设置render queue为Transparent,这样不透明的物体会先渲染,然后位于被不透明物体遮挡的透明物体就可以不必渲染,减少开销设置render type为Transparent,便于一些replacement操作设置blend mode
转载
2024-04-15 12:55:09
157阅读
作业要求牧师与魔鬼 动作分离版【2019开始的新要求】:设计一个裁判类,当游戏达到结束条件时,通知场景控制器游戏结束目标:建立动作管理器,使动作抽象出来,可以应用到任何游戏对象上,以此提高代码复用性。部署工作给摄像机添加RayCaster部件,可以实现追踪监听船添加部件牧师与魔鬼添加部件设计思路课程网站介绍设计思路主要是:通过门面模式(控制器模式)输出组合好的几个动作,共原来程序调用。好处,动作如
using UnityEngine;using System.Collections.Generic;#if UNITY_EDITORusing UnityEditor;#endif[RequireComponent(typeof(SpriteRenderer))]public class GhostSprites : MonoBehaviour{ #region ...
原创
2021-07-08 17:11:26
1509阅读
残影特效在网上有很多例子,我参考着自己整合了一下,算
原创
2022-12-13 14:29:33
342阅读
using UnityEngine;using System.Collections.Generic;#if UNITY_EDITORusing UnityEditor;#endif[RequireComponent(typeof(SpriteRenderer))]public class GhostSprites : MonoBehaviour{ #region ...
原创
2022-01-25 13:52:47
542阅读
残影特效在网上有很多例子,比如这个,我参考着自己整合了一下,算是整合了一个比较完整且特别简单易用的出来,只需要一个脚本挂上去
转载
2016-11-01 13:50:00
272阅读
2评论
CenterOfMass在处理物理碰撞时,尤其是OnTrigger族消息,由于要手动计算碰撞点会经常要用到碰撞体的质心。获取质心常用的有三种方式:1、Collider.bounds.center2、Collider.rigidbody.worldCenterOfMass3、Collider.attachedRigidbody.worldCenterOfMass第一种方式其实是认
转载
2023-04-27 11:47:30
257阅读
作者: 吴亚峰 , 杜化美 , 张月霞 , 索依娜 责编: 张涛6.1 刚体Unity 4 3D开发实战详解6.1.1 刚体特性在Unity内建物理引擎中,首先要介绍的是刚体(Rigidbody)的概念。包含有该类组件的游戏对象,会遵循万有引力定律,在重力的作用下,使物体垂直下落。刚体组件还会影响物体发生碰撞时的反应,使物体遵循惯性定律,并在其他物体运动冲击作用下产生速度或者形变。刚体作为物理引擎
转载
2024-08-24 18:32:50
79阅读
Unity 3D 也称 Unity,是由 Unity Technologies 公司开发的一个让玩家轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具。Unity 3D 可以运行在 Windows 和MacOS X 下,可发布游戏至 Windows、Mac、Wii、iPhone、WebGL(需要 HTML5)、Windows Phone 8 和 Andro
原创
2021-01-02 20:04:17
3594阅读
听到过很多用Unity 3D开发游戏的程序员抱怨引擎效率太低,资源占用太高,包括我自己在以往项目的开发中也头疼过。最近终于有了空闲,可以仔细的研究一下该如何优化Unity 3D下的游戏性能。其实国外有不少有关U3D优化的资料,Unity官方的文档中也有简略的章节涉及这方面的内容,不过大多都是以优化美术资源为主,比如贴图的尺寸,模型静态及动态的batch以减少draw call,用lightma
原创
2013-12-16 21:30:00
523阅读
IsAlive U3D的粒子系统脚本接口相信很多人都用过,ParticleSyetem类的一系列接口都有一个bool类型的参数——withChildren,通过这个参数可以直接将相同的判断或者操作应用到一整个通过Transform父子关系树关联起来的ParticleSystem实例集合上。然而,但凡方便的功能,里面就必然有性能陷阱…… 以IsAlive这个接口为例(用来判断粒子系统是否
原创
2013-12-16 21:42:00
416阅读
方面的内容,不过大多都是以优化美术资源为主,比如贴图的尺寸,模型静态及动态的batch以减少draw call,用lightmap替
转载
2023-04-27 12:11:06
337阅读
关于Unity的音效方面,主要关注以下3个类: Audio Clip : audio data,导入到unity中的音频文件都是audio clip。 Audio Sources : 挂载这audio clip的Object,相当于是一个音频控制器,可以用它来控制音频的播放、停止、以及设置一些播放参数等。 Audio Listener : 音效的监听者,注意一个scene同时只能有一个
转载
2024-04-06 10:37:05
190阅读
Unity3D是由Unity Technologies开发的一个让你轻松创建诸如三维视频游戏、建筑可视化、实时三维动画等类型互动内容的多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。Unity类似于Director,Blender game engine, Virtools 或 Torque Game Builder等利用交互的图型化开发环境为首要方式的软件其编辑器运行在Windows
转载
2012-08-27 10:43:00
716阅读
2评论
CenterOfMass 在处理物理碰撞时,尤其是OnTrigger族消息,由于要手动计算碰撞点会经常要用到碰撞体的质心。获取质心常用的有三种方式: 1、Collider.bounds.center 2、Collider.rigidbody.worldCenterOfMass 3、Collider.attachedRigidbody.worldCenterOfMass 第一种方式其实是认
原创
2013-12-16 21:43:00
714阅读