本文主要是介绍【UnityRPG游戏制作】Unity_RPG项目_相机和场景搭建,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
👨💻个人主页:@元宇宙-秩沅
👨💻 hallo 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅!
👨💻 本文由 秩沅 原创
👨💻 收录于专栏:就业宝典
⭐🅰️推荐专栏⭐
⭐-软件设计师高频考点大全⭐
文章目录
- ⭐前言⭐
- 🎶(==三==) 相机相关
- (==1==)玩家跟随相机
- (==2==)地图相机
- (==3==)UI相机
- 🎶(==四==) 场景搭建
- (==1==) 主要组件介绍
- (==2==) 主场景环境
- (==3==) NPC添加
- (==4==) 道具添加
- (==5==)地形系统
- ⭐🅰️⭐
⭐前言⭐
🎶(三) 相机相关
(1)玩家跟随相机
using System.Collections;
using System.Collections.Generic;
using UnityEngine;//-------------------------------
//-------功能: 移动相机管理
//-------创建者: -------
//------------------------------public class CamareController : MonoBehaviour
{public GameObject player;private Vector3 distance = new Vector3(1, 4, -6);void LateUpdate(){if (player == null){player = GameObject.FindGameObjectWithTag("Player");}if (player != null){transform.position = Vector3.Lerp(transform.position, player.transform.position + distance, 5 * Time.deltaTime);transform.LookAt(player.transform.position);}}
}
(2)地图相机
using System.Collections;
using System.Collections.Generic;
using UnityEngine;//-------------------------------
//-------功能: 地图相机
//-------创建者: -------
//------------------------------public class MapCameraConotrller : MonoBehaviour
{public GameObject player;// Start is called before the first frame updatevoid Start(){player = GameObject.FindGameObjectWithTag("Player");}// Update is called once per framevoid Update(){if (player == null){player = GameObject.FindGameObjectWithTag("Player");}transform.position = new Vector3(player.transform.position.x, 20f, player.transform.position.z);}
}
(3)UI相机
🎶(四) 场景搭建
(1) 主要组件介绍
- LOD Group组件
在Unity中,LOD(Level of Detail,细节级别)Group 是一种用于优化游戏性能的功能。它允许开发者为不同的距离设置不同细节级别的物体模型。这样,在游戏中,当玩家靠近一个物体时,更高细节级别的模型会被加载和显示;而当玩家远离物体时,低细节级别的模型会被加载和显示。通过使用LOD Group,开发者可以在保持游戏画面质量的同时,减少游戏的渲染负荷,提高游戏性能。
- BoxCollider组件
在Unity中,BoxCollider组件是用来定义一个物体的盒状碰撞体的组件。盒状碰撞体是一个基于矩形的简单碰撞体,用于检测物体之间的碰撞。BoxCollider组件可以附加在3D物体上,并为物体提供碰撞检测和物理交互的功能。
- Mesh Collider组件
在Unity中,MeshCollider组件是一个用于定义碰撞体形状的组件,它基于游戏对象的网格(Mesh)来创建碰撞体。与其他简单的碰撞体组件(如BoxCollider、SphereCollider)不同,MeshCollider允许你使用游戏对象的复杂形状作为碰撞体。
- Terrain组件
Terrain组件是Unity引擎中的一个用于创建和编辑地形的组件。它提供了一个可视化的界面,允许开发者在3D场景中创建山脉、丘陵、平原等各种地形特征。
Terrain组件可以用于游戏中的实时地形生成、地形细节绘制、植被和纹理绘制、碰撞检测等功能。通过调整Terrain组件的参数,开发者可以控制地形的高度、坡度、细节密度、纹理贴图等特性,从而实现灵活的地形设计。
Terrain组件还可以与其他Unity组件进行交互,例如摄像机、光照、物理模拟等,使得地形与环境、角色之间的交互更加逼真。
除了通过编辑器界面来创建地形,开发
- Audio Source组件
Audio Source组件是Unity引擎中用于播放声音的组件。它可以将音频文件附加到游戏对象上,通过调整参数控制音频的播放、音量、循环等属性。
通过将Audio Source组件添加到游戏对象上,开发者可以为游戏添加背景音乐、音效、对话等声音效果。
Audio Source组件的主要属性包括:
- AudioClip:音频文件,可以是.wav、.mp3等格式的音频文件。
- Volume:音量大小,可以通过调整值来控制声音的音量。
- Pitch:音调,可以改变音频的音高。
- Loop:是否循环播放音频。
- Spatial Blend:音频的空间混合,控制声音在3D空间中的立体声效果。
- Play On Awake:是否在游戏对象被创建时自动播放音频。
除了基本的属性,Audio Source组件还提供了一些方法和事件,用于控制音频的播放、暂停、停止等操作。开发者可以通过脚本来调用这些方法和事件,实现特定的音频控制逻辑。
总的来说,Audio Source组件是Unity引擎中一个非常重要的组件,它使得游戏开发者可以方便地添加和控制各种声音效果,为游戏增加更丰富的音频体验。
- Animator组件
Animator组件是Unity引擎中用于控制角色或物体动画的组件。它是Unity的一种有限状态机(Finite State Machine)系统,可以通过设置不同的动画状态和过渡条件来实现角色的动态变化和动画播放。
Animator组件通过关联Animator Controller(动画控制器)来控制动画的播放。Animator Controller是一个可视化的编辑器,可以在其中设置不同的动画状态和过渡条件,以及与之关联的动画
(2) 主场景环境
- Bridge(桥)——主要组件为LOD Group和BoxCollider组件
——————
- WaterPlane(地面)——主要材质为水面波纹材质
—-——————————
- Terrain(地形)——主要组件为Terrain组件和Terrain Collider
- 地形中主要物体如下,都为笔刷绘制上去的物体
- Wallcolliders(墙壁阻挡)——主要作用为限制行动圈,主要组件为BoxCollider
- fence (围栏)——主要组件为MeshCollider
- Boom_Mushroom(爆炸蘑菇)——主要组件为partical System(粒子系统)
——————————
(3) NPC添加
-
敵人添加
-
小怪
-
BOSS
-
交互NPC添加
(4) 道具添加
-
钥匙
-
武器
-
钥匙
-
血瓶
(5)地形系统
⭐🅰️⭐
⭐【Unityc#专题篇】之c#进阶篇】
⭐【Unityc#专题篇】之c#核心篇】
⭐【Unityc#专题篇】之c#基础篇】
⭐【Unity-c#专题篇】之c#入门篇】
⭐【Unityc#专题篇】—进阶章题单实践练习
⭐【Unityc#专题篇】—基础章题单实践练习
⭐【Unityc#专题篇】—核心章题单实践练习
你们的点赞👍 收藏⭐ 留言📝 关注✅是我持续创作,输出优质内容的最大动力!、
这篇关于【UnityRPG游戏制作】Unity_RPG项目_相机和场景搭建的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!