栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 游戏开发 > 其他

Unity学习总结(学几个月C++,找到了用Unity和C#的活)

其他 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Unity学习总结(学几个月C++,找到了用Unity和C#的活)

一、主人物控制

①通过调整Main Camera位置和角度,可以确定合适的游戏视角;

②可以建立playController脚本,里面存放对主人物进行控制的代码;

③“transform.translate”:可以设置当前组件的坐标;

④“transform.rotate”:可以设置当前组件角度;

⑤Unity有设置好的控制人物前后左右方向速度的控制项,需要用代码获取设置(Horizontal和Vertical);

总结:可以对玩家人物进行控制,包括:上下左右移动,变向,速度的调整。另外,还可以设置相机位置跟随玩家,实现视角跟随玩家移动的效果。

二、预制件

①可以通过if语句,对组件坐标进行限制,达到空气墙的效果;

②将组件设置为prefab,可以定义一个gameObject变量,将其赋值并实例化,再利用“InvokeRepeating”函数,达到不断随机生成预制件的目的;

③在组件出界时,可以获取其坐标,判断出界后用destroy函数进行清除;

④可以建立SpawnManager脚本用来专门管理prefab;

⑤Debug.Log()可以在窗口底部弹出消息,类似于cout;

⑥Box Collider:可以实现组件间的碰撞效果,里面有很多参数可以调,可以实现不同效果的碰撞。

总结:预制件不是一种特殊的组件,是人为命名的。实际上就是定义gameObject变量,用预制件来赋值,不断重复实例化的过程。可以控制并使用预制件,来不断生成怪物,或者发射炮弹等。另外,Box Collider加上Rigidbody可以实现现实中的各种碰撞。

三、物理层

①Rigidbody:即刚体组件,添加给组件后可以让其具有物理属性,例如:给其增加一个向上的力(AddForce),可以模拟现实生活中的跳跃,向前的力可以让其向前猛冲一下。这个力只加一帧,意思就是加力的一瞬间,物体会获得一个瞬间的加速度,然后就会减速;

②可以设置一个重力倍数,来控制重力大小,达到理想的动画效果;

③不断重复的背景可以通过对撞机实现,因为人为达到背景无缝衔接很难,只能让其不断重复,重复的话就要通过对撞机进行无缝衔接,将重置边界设置为对撞机的一半,就可以无缝衔接;

④跑步姿势、粒子效果、音频等都属于资源。

总结:可以在Unity中给组件设置物理属性,实现现实生活中物体可以有的动作,实现复杂的物理效果可能需要查函数表。

四、UI

①鼠标点击事件:OnMouseDown和OnMouseUp,其中OnMouseDown有响应的click on 函数,可以在鼠标点击时触发一定事件,在游戏中很重要;

②在create->UI>TextMeshPro-text路径下,可以实现界面上的文本,可以对其进行操作达到理想的展示效果;

③文本类型变量:TextMeshProGUI;

④场景管理引擎:重启游戏时需要重新布置整个场景,此时就需要场景管理引擎。using UnityEngine SceneManagement;

⑤按钮的设置:UI->Button,可以通过OnMouseDown和其对应的click on 函数灵活实现各种事件;

⑥监听器:只要有一个按钮被按下,就实现对应函数,可以利用这个来实现游戏难度的设置,根据按钮的tag不同,调整怪物出现数量和频率。

总结:UI和鼠标点击有点重要,但学习之后发现如果要实现简单的界面还是不难的,可以在上面随便造。

刚来公司实习,之前没有告知要996,接受还是花了一段时间的,怎么说捏,确实是除了996其他的都好,食宿都蛮好,周末还可以打游戏,已经很不错了,996就996吧,年轻人的身体就是让造的,做游戏的过程中也能和自己的爱好产生呼应,相对其他的开发工作来说还有趣一点。哪有完美的工作,好好干吧xhz

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/901814.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号