I’d to like to share with you how I’ve learned to build what’s known as a “3D soft engine” through a series of tutorials. “Software engine” means that we will use only the CPU to build a 3D engine in an old school way (remember Doom on your 80386 ?). I’ll share with you the C#, TypeScript and JavaScript versions of the code. In this list, you should then find your favorite language or at least something near your favorite one. The idea is to help you transposing the following samples & concepts on your favorite platform. You’ll find the Visual Studio 2012 C#/TS/JS solutions to download at the end also.
我想要通过一系列教程和你分享我是如何学习构建一个“3D软引擎”的。“软引擎”即为“软件引擎”,顾名思义,意味着你只需要CPU就可构建一个3D引擎,以一种古老的方式(还记得80386上的Doom游戏吗?)。我会和你分享C#版本、TypeScript版本和JavaScript版本的代码。在这个列表里,你应该能够找到你感兴趣的语言的版本吧,或者至少接近你喜欢的语言的语言。这个方式是为了帮助你将以下的代码和概念翻译到你自己感兴趣的语言。在最后还会提供Visual Studio 2012 C#/TS/JS的解决方案供你下载。
So why building a 3D soft engine? Well, it’s simply because it really helps understanding how modern 3D works with our GPUs. Indeed, I’m currently learning the basics of 3D thanks to internal workshops delivered within Microsoft by the awesome David Catuhe. He’s been mastering 3D for many years now and matrices operations is hard-coded in his brain. When I was young, I was dreaming to be able to write such engines but I had the feeling it was too complex for me. Finally, you’ll see that this is not – that – complex. You simply need someone that will help you understanding the underlying principles in a simple way.
所以为什么要构建一个3D软引擎呢?好吧,仅仅是因为它能够很好地帮助你理解当前3D是如何在我们的GPU上工作的。当然,我当前正在学习的3D基础原理要多亏了微软内部的讨论会,在讨论会上David Catuhe传递给我的知识。他已经掌握了3D很多年了,矩阵向量的计算早已深深的刻在了他的脑子里。当我很小的时候,我多么希望能够写一个这样的三维引擎,但是没有人教给我。所以当时对我来说这是极其困难的事。文章最终,你将会明白其实这并不困难。
Through this series, you will learn how to project some 3D coordinates (X, Y, Z) associated to a point (a vertex) on a 2D screen, how to draw lines between each point, how to fill some triangles, to handle lights, materials and so on. This first tutorial will simply show you how to display 8 points associated to a cube and how to move them in a virtual 3D world.
标签:engine,13,Rousset,how,David,part1,引擎,your,3D From: https://www.cnblogs.com/2008nmj/p/17345786.html