2018.10.3 启

  • 心路:

  • 前段时间,也就是刚进大三吧。我决定了,我想要成为一名游戏技术美术(TA)。说实话,这个决定对我来说可能来的太晚。毕竟大一或者大二做决定的话。留给我的时间可能会多一点。之前的几天,甚至因为担心自己无法在剩下的一年的时间里做好足够的准备,去面对就业的压力而难以入眠。当然,父母的压力也是很重要的一个原因。作出这个决定也意味着。他们理想中我的未来可能就不存在了。【有必要全家都去当老师吗?!】 还有呢,我是电子信息类专业的学生。转身投入技术美术的行业。实在有点虚。比较庆幸的是,我在决定之后,就是国庆长假,有充分的时间让我去分析,认识这个行业,并对我的努力方向进行调整,规划。
  • 技术美术。我思考了很久它和我们专业的匹配程度。最后得出结论:其实差距并不是那么大。首先我们专业硬件软件都有涉猎。虽然可能都不是特别的深入,但是有足够的理论知识基础去理解诸如游戏引擎架构,渲染的过程等(虽然我学的不怎么样,但是在阅读游戏引擎和渲染原理方面的书籍时不至于对很多名词抓瞎。hhh)。当然美术方面也是让我很头痛的问题,实打实的理科生,浑身只有艺术细菌。想要我画个什么东西出来,指不定又是个“西方现代美术流派”。问题摆在那里,确实感觉绕不过去。接下来的时间,我也只能说,多欣赏欣赏优秀的美术作品了,希望稍微提高点美术素养。
  • 在今天之前,我没有意识到一个问题。但是在知乎某位技术美术的前辈,在这方面写的各种回答的启发下。 我认识到了自己的畏难情绪和不够自信。前辈说他27岁转行,也没有美术基础。现在似乎也在这行业混的不错(这是我猜的,不过应该八九不差) 这么一想,大三的我,其实还是有机会的。就算在大四不能够进入称心的公司。我也会继续努力的,吃技术饭的东西。认真搞他个十年,还木得好工作?
  • 我对自己在这个学期的规划是:从 游戏引擎理论知识;3dmax 及unity 渲染;3dmax 动画;shader编程;Java;游戏编程 等这几个方面入手。 哎,认真了解过这个这个行业的表面信息才发现,要学的东西真的太多了。
  • 今天大概就说到这吧! (一不小心写太多了,还是激动了点)

**

学习笔记(对每日自己学习的大概东西,关键词汇稍作记录,稍微反思下效率吧)**


游戏引擎架构


  1. 雷神之锤引擎 使用主控台变量 cvar

  2. 可配置选项的数据类型必须相对简单(主要为布尔,整数,浮点数)
    每个可配置选项都实现为全局变量。

  3. 动画定义属性例子 P239*

  4. 文件系统API

  5. 绝对和相对路径 在运行时最好避免搜寻路径(性能考虑)

  6. 串流必须采用异步(多线程)方式进行文件I/O

  7. 小型游戏项目中,游戏资产的管理方式可以是把组织不严谨的文件以项目特设的目录结构至于公用网盘中。但此方式不适用于现代商业三维引擎。海量信息。更正式的方法是跟踪及管理资产。

    美术源文件(Maya场景 Illustrator)

  8. 资产调节管道 将资产转换为引擎需要的格式
    【 1 导出 :编写插件? 2 资源编译:数据“按摩” 3 资源链接:打包】

  9. 资源管理器的重要性

    1 处理多种类型数据(最好是以一致的方式处理) 2 创建/删除资源
    3查看修改现存资源 4把资源从一个位置移至磁盘的另一位置(资产的调度非常必要)
    5资源的交叉引用,并维持其完整性
    6保存历史
    7支持各种查询方式

  10. 虚幻3的资源数据库 UnrealEd 管理(作为引擎的一部分)。 资源元数据管理,资产创建,关卡布置 虚幻3的资源数据库 UnrealEd 管理(作为引擎的一部分)。 资源元数据管理,资产创建,关卡布置
    优势:”一站式购物” 界面创建单一整合一致。

  11. 资源的有效性(导入之前就需要过滤)

  12. 缺点:1 修改,合并某包资源困难。 2 对资源的自动维护(重命名,移动),会产生虚拟对象,造成闲置,累积的问题。

  13. 顽皮狗 《神秘海域》
    优秀的GUI设计 ; 所有数据对象会被打包成演员和关卡两种资源文件(演员:骨骼,网格,材质,纹理,动画)(关卡:静态背景网格,材质,纹理,布局信息)

Unity引擎知识

今天刚到的书,摸起来感觉真好
渲染流水线【概念,功能】:CPU
应用阶段:准备场景数据;粗粒度剔除;准备渲染状态【材质(漫反射颜色,高光反射颜色);纹理;Shader】 输出渲染所需要的几何信息(渲染图元)

几何阶段:GPU
处理渲染图元【绘什么,怎么绘,哪里绘】;输出屏幕空间的二维定点坐标,深度值,着色。

光栅化阶段:
成像;决定每个渲染图元中哪些像素应该被绘制;对顶点数据(纹理坐标,顶点颜色)插值;
逐像素处理。

CPU流水线:
** 1. 数据加载至显存:
**【费时】硬盘(HDD)---->系统内存(RAM):网格,纹理(顶点,坐标,颜色)—>显存(VRAM)
移除RAM中不必要的数据(网格数据可以保留:碰撞检测)
设置渲染状态:
顶点/片元着色器;光源属性;材质、
调用Draw Call :
该命令指向图元列表 ,CPU调用图像编程接口。

  1. GPU流水线:

顶点着色器
1 坐标变换【齐次裁剪空间;归一化设备坐标NDC;透视除法】 2 逐顶点光照。
裁剪:(不可编程,但可配置)
屏幕映射:注意窗口坐标系之间的差异;OpenGL 左下(0,0);DirectX左上(0,0)
三角形设置:顶点到边的过程
三角形遍历:对三角形网格覆盖范围生成片元。输出片元序列(序列是状态的集合)
片元着色器
对单个片元的颜色进行计算处理。(纹理采样…)
逐片元操作/合并输出操作
1 决定片元的可见性(各种测试工作:深度测试 模板测试) 2 通过测试的片元的颜色值和已经存储在颜色缓存区的颜色进行混合。

透明效果需要开启混合功能。 Early—z技术; 透明度测试导致性能下降(着色器的操作和GPU冲突);GPU双缓存策略; Unity shader采用“Cg/HLSL 或GLSL”语言 ;CPU 和 GPU之间存在命令缓存区。 批处理可以减少Draw Call 提高帧率(适用于静态物体)

JAVA编程 Get

渲染 Get

使用了VRay Toon进行渲染,效果还挺不错的,我觉得终于找到了除了看视频之外的学习渲染的方式了。虽然书上看起来没有视频那么形象。不过好多视频真的听起来,云里雾里的。自学起来真的难。

小结

今天我在看书的时候,有一种前面几方面的知识串起来的感觉(莫名的觉得很爽),之前书上有些理论,词汇。往往不能够很形象的理解。原来它需要的知识在其他方面。理论与实践并重才行。 编程太差劲了,我得好好提高自己的编程水平才行。坚持规律作息+1。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值