unity3d如何量产npc

article/2025/6/27 16:36:16

文章目录

  • 1.技术概述
  • 2.技术详述
    • 2.1 修改预制体
    • 2.2放置预制体
    • 2.3开始量产
  • 3.技术使用中遇到的问题和解决过程。
    • 3.1第一个npc脚没落地
  • 4.进行总结。

1.技术概述

在unity3d游戏制作过程中,常常需要用到大量的剧情npc,特别是遇到,军训等大场面,有时候一个一个加npc会有很大工作量,因此需要量产npc,难点在于,第一个npc的摆放不能出错,否则量产的npc都不能使用。

2.技术详述

2.1 修改预制体

首先,把别的地方下载的NpcBase资源,找到,点击它
(此时的NpcBase约等于一个植物人,一个摆件)
在这里插入图片描述
在右边点击添加组件
在这里插入图片描述
在这里插入图片描述
添加一个盒装碰撞器,通过修改大小,尽量贴合人物。(这一步是加入碰撞体,使得npc与主角相撞不会穿模)
注意不要勾选:是触发器选项
在这里插入图片描述
再添加一个胶囊碰撞器,调整大小到略大于npc一圈,勾选是触发器,此时这个不再作为碰撞体存在,而是作为触发器,只要主角进入范围,就会触发脚本,产生对话之类的效果。
在这里插入图片描述
挂上,你要触发的脚本(这里是我队友编写的脚本)
在这里插入图片描述
如图,最终,长方体那个是碰撞体,半圆形那个是触发器(胶囊形态的,一半在地面上,一半在地下)
在这里插入图片描述

2.2放置预制体

直接把这个预制件拖动到场景里,接着会发现它身上出现了坐标轴,可以拖动三个面来调整xyz轴位置,如图(可能地板颜色也是绿的,不是很明显,我用红笔画了一下)
注意:调整z轴的时候一定要找好角度和位置,观察人物的脚是否刚好贴地,不然后续你会拥有一个悬浮军团)
在这里插入图片描述
除此之外,选中这个预制件之后,还可以在右边窗口调整倾斜度和缩放什么的,用来适配场景。
在这里插入图片描述

2.3开始量产

在反复确认第一个npc没有问题之后,我们就可以开始量产了
在左边的列表里面,找到这个npc,复制,然后粘贴粘贴粘贴,得到十个同样npc。(新粘贴出来的npc和旧的在同一位置,需要把它挪出来,注意不要改变之前千辛万苦调整好的z轴,只要左右平移就好了)
为了整洁,你可以创建一个空对象
在这里插入图片描述
点左上角那个+。
然后把列表里你的十个小人全拖到这个新的空对象里面。(这里我的空对象是,一坨人套装,里面有五十个军训人npc)
在这里插入图片描述
接着就可以开始无限套娃,再新建一个空对象,军训,用来存放复制粘贴的十几个一坨人套装,移动xy轴,放到场景的不同位置。
在这里插入图片描述
最后,你就可以得到,npc军团了。

3.技术使用中遇到的问题和解决过程。

3.1第一个npc脚没落地

虽然这个问题,看起来有些离谱,但确实是新手容易犯的错误,要小心调整npc高度,既不能陷入地板,也必须贴地。否则,你后续量产出来的npc都是漂浮人。
我当时的解决方案是,全部重做。

4.进行总结。

参考文献、暂无


http://chatgpt.dhexx.cn/article/j082rAnN.shtml

相关文章

【npc实现代理】

nianzii is real !!!!!!!!哈哈哈哈哈哈,又到了快乐的时光了。今天给大家分享 自己在使用npc时候的一些步骤和方法。在此之前我先给大家分享一个白嫖别人nps的方法:fofa搜索 :app"nps" 即可出现一大堆没有隐藏网站指纹的nps网站的登…

计算传奇客户端中NPC外观代码的方法

每个NPC的外观都是由传奇客户端中的NPC.wil.文件提供素材,NPC.wil文件素材内综合了很多的图片。今天的教程,将教大家如何计算NPC外观代码. 首先,我们需要WIS编辑工具打开我们客户端中的npc.wil文件,查看我们需要的NPC外观图片编号…

计算机控制什么是npc,游戏里的npc是什么意思

游戏里的npc是什么意思?很多玩家在讨论游戏时会提到npc这个词,有些玩家不太理解该词的意思,想要了解,下面为大家介绍一下游戏里的npc的意思,想了解的玩家快来看看吧。 游戏里的npc是什么意思 NPC是Non-PlayerCharacter…

计算机控制什么是npc,npc是什么意思

很多朋友在玩游戏的时候,都有接触到npc,那么有人就要问了,npc是什么意思?它有什么作用呢?下面我们就来简单介绍一下。 npc是什么意思?概念如下: npc的全称是Non-Player Character,也就是非玩家控制角色的缩写。这个…

海盗王实现随身NPC功能

曾经玩过一个海盗王的服,它里面有个随身NPC交易的功能。 一般正常情况下,是在城里或者野外,来到一个NPC旁边,点击打开交易功能,才能进行物品的购买和出售。随身NPC可以在身边没有NPC的情况下,通过工坊的按…

游戏经济系统分析:通货与交易

来自GameRes,转载请标明出处:http://www.gameres.com/689338.html 文/旭曜灵 接上篇《 《PoE》的技能串联与体验设计:《Diablo II》的另一种诠释 》,这次是PoE系列的最后一篇,终于要来谈它特殊的经济系统了&#xf…

python中科学计数法怎么表示_python科学计数法转换

python 输出数字,如何不以科学计数法输出? 概述利用numpy设置输出选项即可 代码解析 未使用numpy设置: import time # time 时间类 print(time*time*1000) #输出一个非常大的数字 #out: 6.30e1352 由此可以看到,默认输出是以科学计数方式输出 使用numpy设置print的输出选项…

MATLAB临时关闭科学计数法显示

MATLAB临时关闭科学计数法显示,在format命令后加g即可解决,如: >> format long g

科学计数法

1.应用场景 较大较小数字表示&#xff0c;在一些算法中被用到。 如计算2^64&#xff0c;编程语言基本都是使用科学计数法表示结果。 2.介绍 科学记数法是一种记数的方法。把一个数表示成a与10的n次幂相乘的形式&#xff08;1≤|a|<10&#xff0c;n为整数&#xff09;&…

matlab 坐标不用科学计数法,matlab不用科学计数法

『壹』 matlab中怎么才能不是科学计数法表示结果。比如1.0e003 * 2.7581&#xff0c;怎么使它显示为2758.1谢谢了&#xff0c;很急啊 format long (小数位14) 或 format short(小数位4) 『贰』 matlab中科学计数法怎么表示 在matlab中&#xff0c;科学计数法用如下形式表示&…

计算机科学计数法符号,科学计数法怎么表示

科学计数法怎么表示2019-09-26 16:35:10文/陶凯月 科学计数法就是用幂的方式来表示。科学记数法是一种记数的方法。把一个数表示成a与10的n次幂相乘的形式(1≤|a|<10&#xff0c;n为整数)&#xff0c;这种记数法叫做科学记数法。 科学记数法是一种记数的方法。把一个数表示成…

计算机输出科学计数法,python不用科学计数法

❶ Spyder集成开发环境中,Python绘图如何让Y轴不以科学计数法显示 很简单只需两个语句: import numpy as np np.set_printoptions(suppress=True) 这样就可以搞定! ❷ python 输出数字,如何不以科学计数法输出 概述 利用numpy设置输出选项即可 代码解析 1、未使用numpy设置…

C语言科学计数法介绍和示例

文章目录 1、科学计数法2、获取视频教程3、版权声明 1、科学计数法 在实际开发中&#xff0c;我们很少使用科学计数法&#xff0c;但是它经常出现在计算机系统中&#xff0c;例如浮点数在内存中的存放方式就是科学计数法&#xff0c;所以我们还是有必要学习科学计数法。 科学…

mysql查出来科学计数法_数据库字段出现科学计数法e+的情况分析

问题: 有时候,我们在将excel表格中数据导入数据库中时,对于表格中的数字会默认为float的数据类型,这个时候导入到数据库中的这个表的值是正常显示的; 然而如果你要把导入到数据库中的表,再插入到另一个表中,并且对应的字段如果是char、varchar或者是nvarchar等类型时,并…

C语言科学计数法E格式

记住口诀 e前e后必有数&#xff0c;e前为小数可以省略整数部分或者小数部分&#xff0c;e后必须为整数&#xff0c;中间不能加空格 e前为小数省略小数部分 e前为小数省略整数部分 e后不为整数不合法 e前为小数同时省略整数部分和小数部分不合法 用空格隔开不合法

C语言-求阶乘的两种方法

目录 方法一&#xff1a;递归法求阶乘 方法二&#xff1a;循环法求阶乘 main及结果 方法一&#xff1a;递归法求阶乘 long Factorial_way1(int m){if(m1)return 1;else{return m*Factorial_way1(m-1);}}方法二&#xff1a;循环法求阶乘 long Factorial_way2(int m){long su…

c语言中实现阶乘的方法,c语言实现阶乘的方法

c语言实现阶乘的方法 从键盘输入一个数&#xff0c;求出这个数的阶乘&#xff0c;即 n!。 算法思想 首先要清楚阶乘定义&#xff0c;所谓 n 的阶乘&#xff0c;就是从 1 开始乘以比前一个数大 1 的数&#xff0c;一直乘到 n&#xff0c;用公式表示就是&#xff1a;1234…(n-2)(…

C语言求阶乘案例教程

思路分析&#xff1a; 1.我们先搞清楚阶乘是什么&#xff0c;怎么用数学符号表示出来。 我们看百度百科对阶乘的介绍。 “一个正整数的阶乘是所有小于及等于该数的正整数的积&#xff0c;并且0的阶乘为1。自然数n的阶乘写作n!” 举个例子&#xff1a;求3的阶乘就是3!1*2*36 …

c语言-阶乘求和的几种方法

阶乘求和的几种方法 目录 一、阶乘定义 二、阶乘求和 1.两层for循环嵌套使用 2.一层for循环直接实现 3.函数的递归调用来求阶乘 总结&#xff1a; 一、阶乘定义 任何大于等于1 的自然数n 阶乘表示方法&#xff1a; n!n*(n-1)*(n-2)3*2*1 二、阶乘求和 1.两层for循环嵌套使用…

利用C语言求阶乘

#include<stdio.h> #define N 3 double fun(int x) { int i; double y1; for(i1;i<x;i) yy*i; return y; } int main() { printf("%lf\n",fun(N)); }