unity游戏源码和教程:智能分析话语的三维唯美世界
我不想和任何人说话,大家不要打扰我。
这个游戏的源码(含教程文档)我放到了夸克网盘https://pan.quark.cn/s/618fb9459029
小区:
小区傍晚的雪:
小区的晚上:
家里:
市中心:
市街道:
郊区:
(一)声明
小区场景的三维模型来自于UnityStore的unity包:Low Poly Japanese Housing Complex。很多人在用,所以我的游戏和其他人的游戏出现这个相同场景,不是抄袭。而且那只是个三维模型,程序要自己写,每个人写的程序是不同的。
市中心、市街道、郊区场景,来自UnityStore的unity包:258316_Anime_Tokyo_(Japanese_City),也有很多游戏开发者在用这个场景三维模型。
人物三维模型来自于网络上大家常见、常用的三维人物模型,我做了骨骼绑定、蒙皮、走路动画。
雪景程序来自于unity包:Global Snow,天空盒来自于unity包:AllSky。
(二)基本操作
W键(长按):向前走。
S键(长按):向后走。
A键(长按):向左转。
D键(长按):向右转。
鼠标左右上下移动来控制摄像机视角(屏幕视角),人物前进方向自动朝向摄像机视角。
键盘右边的方向键:上:抬高摄像机视角,下:降低摄像机视角,左:拉近摄像机视角,右:拉远摄像机视角。
F键(单击):第三人称视角和第一人称视角的切换。第三人称视角适合用在街上,第一人称视角适合用在家里。
空格键(单击):显示或关闭文字的输入输出框(默认不显示,需要点击空格键才显示)。输入完文字后,按回车键发送。
M键(单击):背景音乐,继续按,是下一首背景音乐。
数字键1(单击):小区场景(默认场景)。
数字键2(单击):市中心场景。
数字键3(单击):市街道场景。
数字键4(单击):郊区场景。
Esc键(单击):退出游戏。
小区场景中:
H键(单击):小区场景时,可以一键回家。
G键(单击),男主角和女主角分开,女主角停留在原地。男主角走远后,第二次按G键,女主角会自动寻路来找男主角,到男主角身边。
J键(单击):女主角一键换服装。
K键(单击):每点击一次,就变换一次天色。浅夜→夜晚→白天→傍晚→夜晚→清晨→白天→阴天。
L键(单击):正常景色和雪景的切换。
(三)
即便没有安装unity编辑器的情况下,play文件夹里DreamStart.exe可以直接运行此游戏。
unity的一份源码,只能适配一个编辑器版本,这个源码适配的是2022.3.38,其它版本打开此源码,会故障。
unity导入此项目时,不是导入哪个具体启动文件,而是用unity Hub(unity启动器)直接打开(导入)DreamStart文件夹。
如果unity编辑器没有显示场景,就在编辑器里手动打开park文件夹里的Scenes文件夹里的park场景文件即可。
在unity编辑器界面,不要把窗口最大化后再运行游戏,那样运行不了。但可以在游戏后,再最大化窗口。
地上的蓝色,是自动寻路烘培的地面,游戏运行时不显示那蓝色。
(四)话语分析
话语分析是有用的,假如游戏中,你是队长,带着NPC队友张三和李四,路上遇到蛇,你可以说“张三打蛇,李四保护张三。”这就需要先分析出主语、谓语、宾语,程序才能处理。
输入完成后,按回车键发送。
示例:
输入:猫吃鼠
显示:主语:猫,谓语动词:吃,宾语:鼠
输入:白色的猫吃黑色的鼠
显示:主语:猫,谓语动词:吃,宾语:鼠,主语的形容词:白色的,宾语的形容词:黑色的
输入:两只猫吃3只鼠
显示:主语:猫,谓语动词:吃,宾语:鼠,主语的数词:2只,宾语的数词:3只
输入:张三的猫吃李四的鼠
显示:主语:猫,谓语动词:吃,宾语:鼠,主语的名词所有格:张三,宾语的名词所有格:李四
输入:张三给李四苹果
显示:主语:张三,谓语动词:给,间接宾语:李四,直接宾语:苹果
输入:张三让李四打扫教室
显示:主语:张三,谓语动词:让,宾语:李四,宾语补足语动词:打扫,宾语补足语名词:教室
输入:2024年张三在学校吃饭
显示:主语:张三,谓语动词:吃饭,时间:2024年,地点:学校
如果分析显示不了,可能词语不在词库里。先找动词分割句子,再找名词,所以如果动词不在词库里,即便名词在词库里,也没用。
连接的单机数据库是garden.db,是sqlite单机数据库,就是在用户电脑的游戏文件里的,不联网的、不用安装服务的、不用配置的,直接就可以用的数据库。