unity3D hw_4
Unity3D设计 Homework_4
一、基本操作演练
(1)下载Fantasy Skybox FREE,构建自己的游戏场景
选window框框下的 Asset Store的选项
![在这里插入图片描述](https://img-blog.csdnimg.cn/d26dd7d3a92f424d8ff524709ce10080.png)
然后点击search online的操作 ,就会跳转到商店的网页。
在聊天框中输入skybox free即可弹出,点击下载
点击 Add to Asset,即可把资源包添加到我们的项目里面啦
添加后利用Unity的工具添加自己喜欢的场景
①首先添加terrain地形的GameObject,然后利用图下五个标识,第一个是塑造地形,第二个是为地形渲染,第三个是种植树木,第四个是种植草,第五个是对地形的一些数值限制
②实验,并且启用灯光效果。
(2)总结游戏对象的使用
如图我们看到了GameObject中有如此多的种类,而对于我们初学者来说,一般是只使用到3D Object, Light,Audio三种,分别对应着,3D物体,灯效,音效。
①其中3D Object有许多模型可以选择,常见的有cube,Sphere, Cylinder它们可以被赋值作为渲染模型或者碰撞模型,不同的Object消耗的游戏性能也有明显差别。
②Light 组件
- Directional light: 方向光,类似太阳的日照效果。
- Point light: 点光源,类似蜡烛。
- Spotlight: 聚光灯,类似手电筒。
- Area Light:区域光,无法用作实时光照,一般用于光照贴图烘培。
③Audio组件(音频文件)
- 创建音源,建一个空对象,并挂载AddComponent->Audio ->Audio Source
- 将Asset中的AudioClip拖放入音源部件
- 选中play On Wake 和 Loop,保证程序启动后不断播放声音
- 空间音效:在Spatial Blend设置为 3D
- 设置
- 语音衰减方法:Logarithmic Rolloff
- Min Distance = 1
- Max Distance = 5
- 将声源放置在距离稍远的位置,例如这里我们设置为position = (-5,0,-10),与主相机同一个水平位置。
- 然后根据自己的需要,使用移动工具,可以改变声源的位置,听出立体声效。
(2) 编程实践(选做牧师与魔鬼的分离版)
添加了判断器,详情请见github
链接为:点击这里,跳转github仓库
(3)材料与渲染联系(选standard shader)
Unity 标准着色器是一个包含一整套功能的内置着色器。此着色器可用于渲染“真实世界”的对象,如石头、木头、玻璃、塑料和金属,并支持各种着色器类型和组合。
通过标准着色器,可将大量着色器类型(例如漫射、镜面反射、凹凸镜面反射、反射)组合到同一个可处理所有材质类型的着色器中。这样做的好处是,在场景的所有区域都使用相同的光照计算,从而在使用该着色器的所有模型中提供逼真、一致且可信的光照和着色分布。
材质表现的物体的质地,指的是色彩、纹理、光滑度、透明度、反射率、折射率等等,材质就是Shader的实例。
Shader着色器:专门用来渲染3D图形技术,可以使得纹理以某种方式展现。实际就是一段嵌入到渲染中可以控制GPU运算图像效果的算法。
知识图谱
(图片转载于博客https://blog.csdn.net/wolvehunter/article/details/110203715)
(4)文档及其演示
① 标准着色器包含标准粒子着色器
其中的配置官方文档及其效果如下
②Autodesk Interactive 着色器文档及其演示效果如下
③ 实践由于自己从0创造出一个渲染好的场景难度较大,于是从Asset Store中下载并自己在这个基础上调试一番。
项目地址:https://github.com/buzhanpeng/island_shader.git
整体观感
在目录Environment中找到了渲染所用到的部分材料,每个项目下面都有属于自己的材料,而且许多是多层叠加。
再看到Shader文件夹,便是源文件
让我们来修改一下看看效果 已知,灯塔是不透明的,但是当我们把lighthouse文件下面的material修改,从opaque编程transplant,由于灯塔有多个条纹,于是要把几个material一起修改了,便出现了下面一幕。仔细看我们可以透过灯塔,看到对面的树和海面。
- 再通过改海岛island文件夹下面的组件
(原图)
(更改平滑度smoothness,变小变粗糙)
(smoothness变大,变光滑,反光效果也更好)
还有许多有趣的实操,大家可以自己尝试。
unity3D hw_4相关推荐
- unity3d游戏开发猜想——当程序猿老去
程序猿将代码注入生命去打造互联网的浪潮之巅.当有一天他们老了.会走向那里,会做些什么? 非常多年以后,在我60岁的那天早晨,天刚蒙蒙亮我就起床了,先去公园晨练,然后回来做早餐(50岁的时候我学会了做饭 ...
- Unity3D 中 2D_Toolkit插件下载 和 导入方法
Unity3D 中 2D_Toolkit插件下载 和 导入方法 1.你把下载来的包放到 安装目录:Editor\Standard Packages里面. 2.然后按ctrl+9,进入asset sto ...
- Unity3D 镜面反射
原创文章如需转载请注明:转载自 脱莫柔Unity3D学习之旅 QQ群:[119706192] 本文链接地址: Unity3D 镜面反射 这是官方CharacterCustomization事例中的镜面 ...
- [推荐]C#快速开发3d游戏工具--Unity3d
最近有幸接触了一点Unity3d的东西,和大家分享一下. Unity3d 简介 是一款可视化的,3d游戏开发软件.可以进行手动绘制3d场景,自己添加摄像机角度,3d模型设计,事件触发,对于园子里大家很 ...
- unity3d 切换网络_Unity3d新网络请求方式UnityWebRequest详解
Unity将要逐步放弃www网络请求api,新的api请求方式来临:UnityWebRequestThe,也正是本篇文章要给大家介绍的重点,那就是UnityWebRequestThe的使用详解. 旧的 ...
- Unity3D提示“XX,some are mac os x (unix) and some are windows”
2019独角兽企业重金招聘Python工程师标准>>> 解决办法: 将Unity安装目录\Editor\Data\Resources\ScriptTemplates\目录下的所有文件 ...
- unity3d教程运行物理机制
首先,我们将把Hooke定律写Euler方法结合在一起找到新坐标.加速和速度. Hooke定律是F=kx,这里的F是指由水流产生的力(记住,我们将把水体表面模拟为水流),k是指水流的常量.x则是位移. ...
- 【跟我一起学Unity3D】做一个2D的90坦克大战之AI系统
对于AI,我的初始想法非常easy,首先他要能动,而且是在地图里面动. 懂得撞墙后转弯,然后懂得射击,其它的没有了,基于这个想法,我首先创建了一个MyTank类,用于管理玩家的坦克的活动,然后创建AI ...
- UNITY3D拓展编辑器 - 目录
前文: 最近在自学UNITY3D拓展器,对以上功能点做一些认知范围内的总结. 目录: 1. 属性编辑器 http://weizeteng.blog.51cto.com/5604545/1774431 ...
最新文章
- ORM表之间的多对多处理
- python 基础 7.6 sys 模块
- 如何保证RabbitMQ消息队列的高可用?
- 华为服务器显示红色的心跳,服务器心跳检查
- IQ01/IQ02 Create/Change Material Serial Number BAPI
- Django,Ajax,文件上传,ajax发送json数据,基于Ajax的文件上传
- 微信视频号推荐算法上分技巧
- docker java 不兼容_Apple M1 芯片不支持 Docker?Docker:正在努力适配
- 通过URL传参数,然后第二个页面需要获取参数
- php_os用法,golang中os包用法
- 20172316 结对编程-四则运算 第一周 阶段总结
- linux mysql --help_深入理解mysql帮助命令(help)
- Context Encoder论文及代码解读
- Vi编辑器基本常用命令
- 密码分析之单表代换原理详解与算法实现
- 数据库---学生选课查询案例---经典查询题
- 【Web3】什么是Web3?一个新的去中心化网络,或是最新的营销流行语
- [存储-测试工具]vdbench文件测试随机IO混合读写配置模板
- 【VUE-编辑回显】
- 从权力的游戏谈用户画像