RedZero9 发表于 2021-4-12 10:50

基础逻辑的话,几何数学是必备的,相机移动转向、角色控制都离不开几何数学;
shader方面的话,线性代数是必不可少的,各种空间变换,光照模型都需要线性代数,其中渲染方面如果做的深,需要扎实的高等数学;
再进一步,深入到引擎,需要了解离散数学以及以上所有需求等等,比如采样带来的时间空间锯齿,gamma-linear、tonemap之类的拟合曲线,需要的知识很庞大。

pc8888888 发表于 2021-4-12 10:55

3d数学,数据结构和算法。

johnsoncodehk 发表于 2021-4-12 10:57

Vector Matrix Quaternion 三大件

NoiseFloor 发表于 2021-4-12 11:05

做unity游戏开发,引擎都给你封装好了,不需要太多的数学基础,常用的向量分解,旋转,矩阵,
点积,叉积,法线等,需要一些基础,但是不需要自己去实现。
我也创建了个学习交流群 点击下面链接即可加入
正在跳转

RhinoFreak 发表于 2021-4-12 11:09

不需要数学,
但是你的程序能力还差的远。你只是会用引擎,和程序员还是有很大的差距。有时间多学点程序基础的东西。当然程序员需要逻辑思维能力和抽象能力。学数学能提升你这方面能力,但是做程序员工作和数学里学到的东西没半毛钱关系。
担心有人反驳,我补充一下,5万月薪以下的程序员,初中数学知识就足够了。

Arzie100 发表于 2021-4-12 11:15

untiy主要用来做游戏
个人经验,一些基础数学还是需要的
三角函数要灵活掌握,因为游戏里有很多转向角度需要用到
立体几何肯定也是需要的,要计算子弹碰撞嘛
一些特殊轨迹的子弹,你要能计算它的函数曲线,这可能要用到微积分和一些物理定律(微积分本来就和物理联系很紧密)
矩阵计算是需要的,因为很多坐标变换都是以这个做基础的(当然你学会了更高级的四元数可以跳过这个,不过学东西都要由浅入深嘛,你矩阵都不理解怎么可能理解四元数)
如果做大型游戏的话,离散数学也很重要(包括图论),主要是用来优化数据结构的。如果你没这些知识也可以做游戏,但是做出来的游戏可能会很卡

APSchmidt 发表于 2021-4-12 11:23

写2d游戏逻辑只要能够了解基本的向量计算及其几何意义就没有太多障碍。欧拉角,四元素这些在3d游戏旋转模型和摄像头常用,需要理解。成熟的引擎都会把相关接口封装好,我们只需要在上层调用接口。做渲染需要多了解一些线性代数,图形学知识。
从找工作的角度考虑,最好是多看一些官方的例子和文档,然后再做实践。定期刷刷题。游戏程序员玩玩游戏其实也挺有帮助的,这样可以更好理解策划案和策划沟通。
底下是书籍推荐:
1. 3D数学基础 (豆瓣) 这本书大家都推荐过了,也是很多游戏客户端程序入门必看的书目,可以先看看头六章。
2.Real-Time Collision Detection 这本是讲碰撞检测的书,可以加固一下之前学习的数学知识。对于理解引擎碰撞检测这部分文档,是比较有帮助的。
3.Real-Time Rendering, Fourth Edition 实时渲染书目,对理解引擎图形相关文档很有帮助。
4.计算机图形学几何工具算法详解 (豆瓣) 这本书可以作为《3D数学基础》的补充,也可以当成工具书查询。

Ilingis 发表于 2021-4-12 11:24

如果能上专,说明你有能力且已经可以入门了。要想走很远。你自己就会在编程的路上看到数学的魅力。
大二你还有一段时间,语言选一门认认真真的学,推荐C++(不过你做Unity是C#)也可以学C#【两本书就够了,但是一定要扎实初级VC#入门到精要+CLR via C#怕是你以后会经常翻看】
数学对你入门来说没那么重要,但是记得捡起来,看看数据结构和算法,线性代数和离散数学吧,Unity怎么说也只是一个引擎,你需要的计算机专业的基础,操作系统和计算机原理不能丢下。
良好的习惯能帮助到你,养成做笔记总结;计划与实施;
记得清空你的TodoList,记住技术没有尽头,基础是你的根基。前辈们走过的路,这辈子都怕走不完。大二如果感觉根基不好,同时记得打基础。如果你要走技术这条路,Unity是你的起点,点到面的扩散,你要努力去看自己的终点,看着自己能看到的终点去前进,做好计划并且不断调整。完善自己的技术栈。
知乎中其他人的一张图,谁发的忘了-借图。送给迷茫的你,愿能帮助到你。

FeastSC 发表于 2021-4-12 11:32

高中,最多大一。重点是数据结构

franciscochonge 发表于 2021-4-12 11:41

有钱的方法报培训班,没钱的办法去公司上班实践学习
页: 1 [2] 3
查看完整版本: 想做unity程序,需要什么数学基础?