首页 > 编程语言 >什么是程序几何体?

什么是程序几何体?

时间:2022-11-23 14:44:58浏览次数:55  
标签:C# 什么 程序 建模 几何体 mesh 3D

程序几何体就是用代码建模的几何体。

通常情况下,制作3D mesh(3D网格模型)是手动操作美术软件如Maya、3DS Max或者Blender等完成的,而本文要介绍的做法却是使用程序指令构建mesh。

这可以在运行时间(mesh直到终端用户运行程序时才完成)、编辑时间(当应用正在开发时,使用脚本或工具)或在3D美术包(使用脚本语言如MEL或MaxScript)里完成。

程序生成mesh的优点在于:

多样性:可以用随机变量生成mesh,也就是说,你可以避免重复制作几何体。

可扩展性:mesh的细节程度可以由终端用户的机器性能或偏好来决定。

可控制性:不了解3D建模软件的游戏/关卡设计师可以理好地控制关卡的外观。

速度:一个对象可以简单迅速地生成多个变体。

谁说的?

以下是本人的背景:我是一名3D美工转游戏程序员再转独立开发者,我认为思考如何用脚本制作出一样东西是非常有趣的。当然,这种乐趣不是谁都能体会,不过没关系。

参考:http://gamerboom.com/archives/76484(分享数字建模方法——从平面到盒子(1))

本文中出现的所有案例都是使用C#和Unity制作的。所有重要的概念都可以转化为你自己习惯的语言/引擎。

你必须掌握C#的基础,如果还懂一些3D几何体的知识就更好了。

不确定自己的知识储备是否足够的人可以做下面的测试:

1、什么是class、function、array,以及loop?

2、如果我用C#语言写出来,你会不会认得出?

3、你了解3D向量是什么吗?(Unity中的Vector3结构)

4、你知道如何获得从一个点到另一点的方向吗?

怎么样?全部会吗?那就太好了。

不太会?那你可能得去学习一下《官方Unity脚本教程》和“基础C#教程”。

参考:https://gamerboom.com/archives/76616(分享数字建模方法——创造位面(2))

标签:C#,什么,程序,建模,几何体,mesh,3D
From: https://www.cnblogs.com/2008nmj/p/16918213.html

相关文章

  • uni-app 小程序获取用户信息
    小程序获取用户头像昵称,微信又叒做妖,废除之前的接口,改成了头像昵称填写通知:微信小程序端基础库2.27.1及以上版本,wx.getUserProfile接口被收回,详见《小程序用户头像昵称获......
  • FR11 webservice程序数据集
    packagecom.fr.data;importcn.hutool.core.lang.Console;importcn.hutool.http.webservice.SoapClient;importcn.hutool.json.JSONArray;importcn.hutool.json.......
  • 什么是校园气象站,校园气象站特点和功能有哪些
    校园气象站是为院校气象观测开发设计,中小学建设气象站呢?主要作用之一是科普,作为教书育人的地方,不仅要教授学科类知识,还要与生活结合、与气象关联,寓教于乐,让接受知识这件事不......
  • 3.2 Docker最新入门教程-Docker入门-将应用程序容器化
    3.2将应用程序容器化对于本指南的其余部分,您将使用一个在Node.js中运行的简单待办事项列表管理器。如果您不熟悉Node.js,请不要担心。本指南不需要JavaScript经验。......
  • PySide6: QML应用程序教程
    本教程提供了加载QML文件的python应用程序的快速浏览。QML是一种声明性语言,它允许您比传统语言(如C++)更快地设计UI。QtQml和QtQuick模块为基于QML的UI提供了必要的基础设......
  • PCB layout有DRC,为什么还要用CAM和DFM检查?
    随着电子产品的高速发展,PCB生产中大量使用BGA、QFP、PGA和CSP等高集成度封装器件,PCB的复杂程度也大大增加,这对于PCB设计也提出了更高的要求。所以在PCB设计阶段,除了基础的电......
  • 申请免费证书、域名解析以及nginx部署配置https为微信小程序服务
    申请免费证书、域名解析以及nginx部署配置https为微信小程序服务 时间:2022.11.23 作者:飞快的蜗牛  关键字:申请免费证书、域名解析、nginx配置部署https......
  • 随想录(公司程序员的九层楼)
        就IT公司而言,都希望自己的程序员在单位时间内生产出效率最高的代码。但是,不同的人有不同的开发效率。至于说效率之间的差别究竟有多少,还真不得而知。这里写了几个......
  • 随想录(为什么循环队列具有先天的并行性)
       循环队列是很多人喜欢用的一种数据结构。本着先来先服务的特性,循环队列是一种十分简单、健壮的数据结构。不像链表、二叉树,如果使用不慎,就会造成很大的麻烦,但是在循......
  • model(**inputs)括号里边是什么ne?
    inputs={"input_ids":batch[0],"attention_mask":batch[1],"labels":batch[3]}ifargs.model_type!="distilbert":#XLMandRoB......