第一章 编辑能力介绍

1.1角色编辑器技术机制
1.11创建人物


1.12具体流程详解

1.通过解析成品人物xml配置表获取相关的参数和依赖的资源列表。

2.通过资源模块下载和加载全部依赖的资源。
3.开始组装过程,组装一个人物分几个任务,分别是头部顶点计算、身体服饰顶点计算、皮肤贴图合并、骨骼参数应用、最终组合几步。下面分别对这几步予以说明:

1)头部顶点计算:头部部件依赖的资源包括初始的头部模型、若干头部的morpher,依赖的参数信息包括对应morpher的权重、adjustbone的参数。头部顶点在计算时,首先初始化为初始模型的顶点位置,然后把每个morph的偏移信息乘上对应的权重叠加上去,最后再应用adjustbone的蒙皮信息计算出最终模型顶点的位置。

2)身体服饰顶点计算:计算方式类似头部部件,唯一的区别是服饰的morpher是由Dmap根据规则自动生成并打包到服饰的模型上的。

3)骨骼参数应用:骨骼位置的改变来源于两方面,一方面是直接修改的骨骼数据,如胳膊的长度、脖子的长度等等,另一方面是来自配合morpher变换的配置数据,有些变动比较大的morpher需要骨骼位置做同步的调整来适应新变换的体型(例如侏儒变成绿巨人骨骼位置就会对不上,需要调整骨骼的位置)。

4)皮肤贴图合并:贴图的合并在GPU上执行,把多张贴图根据贴花的配置信息组合成一张,例如皮肤上的疤痕、眉妆等可以用这种形式合并到人物的皮肤贴图上去。

5)最终组合:把以上组合好的物件拼接起来组成一个角色。

6)返回完成:程序返回刚刚创建的角色对象,整个过程结束。

单个人物整个过程消耗时间大约1秒,多个人物如果资源没有重复,时间累加,如果有重复,减掉重复部分的时间消耗。具体见下图:

1.2基础模型加载和切换

美术人员根据角色性别、人种预先制作的角色基础模型选项。程序动态加载基础体型数据;使美术能够在预设性别、人种的基础模型下快速编辑角色。

1.3动画播放和切换

采用Animator Controller方式播放动画,利用Animator Override Controller来动态切换动画。动作能不能再组合成复杂的动作,是吧?不管是动作融合或者说变成更长的动作,我的意思是变成舞蹈,你从一个pose,一个方式到一个动作,到一个舞蹈。

1.4编辑能力

1)换装

动态换装,切换所需要换装的资源。然后将角色当前应用的数据(比如dmap,morph等资源)重新应用到角色身上。

2)肌肉脂肪调整

通过调整角色的dmap的权重值调整角色肌肉脂肪效果。

3)肤色调整
美术人员制作肤色模板。程序动态获取肤色模板贴图,应用颜色叠加算法将肤色模板颜色叠加到基础的皮肤贴图上,再通过RGBA的数值叠加,进一步调整颜色。

4)发色调整
美术制作人员制作特地发色模板。程序动态获取肤色模板贴图,应用颜色叠加算法将发色模板颜色叠加到基础的发色贴图上,在通过RGBA的数值叠加,进一步调整颜色。

5)老化调整
通过调整过角色的老化贴图的权重,表现角色皮肤的老龄化效果。

6)脸部调整
角色精细化捏脸,包括脸型调整和五官Morpher调整。程序动态获取角色面部的骨骼分区参数和对应的Morpher参数,叠加表现角色的脸部相貌特征。AI捏脸模板(调用拍照捏脸提供的dll)将AI的捏脸数据(顶点差)动态叠加到人物的模型顶点上,调整骨骼,重新计算绑点,重定向动画。

7)身体调节
角色身体精细化调节,包括对身体骨骼参数和D-map参数的调节。程序动态叠加角色身体骨骼参数和D-map参数,还原角色的体型高矮胖瘦特征。

8)贴花调整
调整所有类型贴花类型资源;程序识别贴花资源的初始位置参数,根据贴花叠加规则还原到对应的皮肤位置上;可通过透明度参数调整贴花类型资源明显程度。

9)人物模板
基于以上角色编辑能力,延伸为角色模板配置工具;服务于角色自动生成(百万NPC)模块。通过设置角色各维度(脸部、身高、体型、老化、服装)的范围值,制作角色自动生成模板。

第二章 开发测试环境解读

2.1NDR测试环境

测试环境中,所有测试功能,测试美术资源,都在此环境进行,目前角色2.0资源就在此环境。

2.2 NDR正式环境

正式环境中,测试通过后,量产资源入库在这里进行,后续百万人物要用的是正式环境。用于正式对外的,稳定的服务器。

测试环境与正式环境的不同点

1、门户地址不同。

门户地址:测试环境——http://*****.http://beta.web.sdp.101.com/

门户地址:正式环境——http://******.http://web.sdp.101.com/

2、数据不同/配置(索引)不同

两个环境的数据不同所带来的最大的影响是在于基础数据(比如维度数据)有可能会影响资源创建。

3、流程不同

测试环境较为开放,项管、资管、开发、测试、策划都可以上线,较为开放;而正式环境不同,必须按照正式的规定的流程。

4、服务目的不同

测试环境主要是用于测试功能;正式环境主要是服务于生产。

2.3-3D能力平台测试环境

3D能力平台为网龙在线教育业务提供 以成熟大型3D网络游戏为基础的,通用部件能力及服务支撑的平台。利用公司积累下来的成熟的大型3D网络游戏框架为基础,以部件化、能力化、服务化的方式,实现3D能力的灵活接入。增加复用性,降低成本,和共享平台、IM应用平台、101教育能力平台相结合,快速搭建拥有3D具象化、多人副本式体验的各种学习平台,让公司在教育领域业务具备更强的竞争力。

3D应用平台项目通过建立部件化架构的技术标准和开发规范,让技术能力得到沉淀和积累,开发工作更便捷,减少重复的开发投入。

同时平缓学习曲线,降低开发门槛,通过部件化开发合作模式吸引更多的开发人员参与,可以更有针对性的解决Unity用中的一些性能瓶颈。

能够更好的了解资源格式,提高资源扩展性,并集中最佳的团队人员,研发出更加高端表现效果。

服务于应用Unity3D作为前端呈现的教育产品和项目,目前包括:VR人生编辑器、VR人生-MMO、3DPPT、101播放器、Ecomuve、针灸、VR语言学习。

第三章 能力应用战略方向

3.1团队内的人使用白皮书:

第一,方便工作的配合降低沟通成本。

第二,可以了解整个百万人物生产的流程,技术等内容,明白自己工作在整个流程中的位置,更好的配合生产。

第三,在生产过程中,都要遵循文档中的标准、规范和流程。

3.2团队外的人使用白皮书:

第一, 可以知道百万人物是怎么生成的,有什么技术特点,方便他们使用人物系统,更好的设计产品。

第二, 让其他高级的专家提意见帮助我们改良方案。

第三, 降低沟通成本,让想进来帮忙的人快速了解,瞬间上手。

关键指标:

定义清楚角色的范畴(只适用于人物)
角色部件如何拆分是合理的(综合考虑能大范围复用重组生成更多的角色,入库的压力,调取渲染的合理程度)
入库标准(哪些参数需要入库,如何存储到数据库)举例:我存在数据库的时候,我的眉毛是怎么存的?没问题的,眉毛就是我们挑了一个眉形,挑了一个眉形相关的变化参数,然后和眉形的贴图,对吧?那这个贴图呢,原则上讲,是允许染色的,或者已经染色好了
在客户端加载的规则(了解)
Check方法:然后从情景上来回跑他两、三次啊,就是明白我刚刚讲的方法,服务端,编辑的时候发生什么事情,存到数据库大概是什么。传到客户端,传了多少东西下来,对吧?那我客户端的资源包大概是要包含多少东西啊?安装包大小啊。
生产流程的规范:单个角色生产、小批量生产、大批量生产,要有明确的规范。
常规的FAQ,例如:有项目需要Q版小孩角色,如何处理等。

第四章 名词解释

关键词:部件、数据库如何入库存储、客户端如何调用读取

美术资源生产

1.部件:组成一个完整人物所需要的部件
2.Morpher差值数据:顶点形变信息,记录的是两个不同模型的顶点差值。将两个模型的顶点差异存储在Unity的BlendShape(unity支持的一种存储格式)中。程序使用时,从Blendshpae中获取顶点差值,叠加到人物的头部。由于Morph是差值数据,不同的morph之间可以相互叠加组合,程序在应用morpher信息时是不对morpher具体影响到哪些五官或五官内的哪些子部件做限制,也就是说morpher种类的划分交由美术划分和配置。比如说美术可以将一个鼻子分为鼻孔,鼻翼,鼻梁,鼻球等,这些morph可以根据不同的权重占比自由的组合成一个新的形变数据,而这些组合后的 数据又可以和AdjustBone做叠加。生成一个新的鼻子。
3.材质:所有人物部件均需要被赋予材质,材质是美术效果的基础呈现方式,其承载了各种贴图,shader,使部件变幻出各种效果
4.蒙皮:所有涉及动作的(会动的),并且在骨骼范围内的人物部件均需要进行蒙皮,使其能够正常播放动画、美术基础工作、俗称绑点(绑定),即为模型和骨骼建立驱动关系的过程,正常都为美术人员手动在3dsMax中进行
5.贴花:在基础贴图上新增一张图片,使其整合呈现出不同的效果(妆容、疤痕、眉毛、瞳孔颜色等等都是通过贴花实现)
6.法线贴图:法线贴图就是在原物体的凹凸表面的每个点上均作法线,通过RGB颜色通道来标记法线的方向,你可以把它理解成与原凹凸表面平行的另一个不同的表面,但实际上它又只是一个光滑的平面。对于视觉效果而言,它的效率比原有的凹凸表面更高,若在特定位置上应用光源,可以让细节程度较低的表面生成高细节程度的精确光照方向和反射效果。
7.Morph动画:模型顶点差值动画,通过预置的通道,记录通道数值变化,完成模型顶点层面的变化,达到形态变化的动态效果。现有2.0的表情动画就是Morph动画。
8.骨骼插槽:针对插槽类型的部件,可以插进人物的每个骨骼,作为子集跟随骨骼运动,可以理解为附着物。
9.参数:可调节维度属性的数值。
10.Dmap:将顶点形变信息(morph)压缩到二进制的文件中。dmap的来源是morph资源,作用也是等同于morph,但是由于身体的服装各有不同,如果每一个服装都出morph,那工作量非常大,而且加载太多太慢,且在一定程度上造成资源冗余,所有服装共用一份形变数据,利用UV2 采样得到形变值应用到不同的衣服上。)
11.骨骼:用来驱动模型蒙皮的物体,通过关键帧或约束关系控制人物播放动画,美术必备资源
12.动画资源:使人物播放动作和表情的骨骼或Morpher关键帧资源数据载体。
13.AB包:AssetBundle文件,适用于网络传输的特定Unity资源格式
14.配置表:用来记录特定美术资源之间匹配关系和参数关联的表格的统称。
15.FBX文件:美术资源的通用文件格式。
16.PFB文件:unity中预制文件(prefab)
17.二进制通道:仅使用1,0两种符号的任何信道。(信道是信息传输的通道)
18.Alpha通道:Alpha 是出现在 32 位位图文件中的一类数据,用于向图像中的像素指定透明度。基本用于基础贴图,以及贴花资源,使用黑白两色将贴图划分成两个区域,黑色代表不显示(透明),白色代表显示(不透明)
19.包装盒:同碰撞体
20.天空球:也叫天空盒,虚拟天空
21.顶点:模型的点(模型的几何顶点vertex)
22.基础体型:未经调整的初始角色体型。(也可特指女性的初始裸模)
23.T-pose:特指符合Unity中Humanoid规范的人物直立双臂左右平展姿势。(具体参见https://blogs.unity3d.com/cn/2014/05/26/mecanim-humanoids/ 中关于:“The T – Stance”部分的详细说明 )
24.女性标准骨骼:女性角色未经调整的初始骨骼。(为所有体型变化的基础)
25.插槽类模型部件:通过挂载方式连接到角色身上的模型资源,如头发、发饰、眼镜、胸章等。
26.基础模型部件:构成角色的最小化初始模型资源。

入库
GUID:美术资源入库后的唯一标识。
DLL:动态链接库文件,又称“应用程序拓展”,是软件文件类型。
Shader:着色器。shader是材质球的代码形式

角色成品
半成品资源/成品资源:半成品应该指的就是部件化的资源,成品指的是拼装好的资源
LOD:针对距离,对资源进行减面,降配处理的统称,资源均有具体lod规范。
碰撞体:碰撞体可以保证资源之间不发生相互穿插

网龙百万3D角色编辑系统介绍相关推荐

  1. 网龙最新互动白板AP-V7获德国红点设计大奖

    2019红点设计大奖(Red Dot Design Award)近日于德国揭晓,网龙旗下子公司普罗米休斯(以下简称普米)的第七代互动白板(AP-V7)凭借流畅的交互体验.出色的性能和人性化的细节设计, ...

  2. 专访王博,国内资深游戏3D角色美术大神

    王博简介 原Massive Black (Shang Hai) 3Dartist, 原网龙U3美术组资深角色设计师,原金山西山居成都研发中心3D角色指导, 现就职于腾讯游戏天美工作室. 曾参与制作&l ...

  3. HTML5期末大作业:网站——仿游戏官网(龙之谷)HTML+CSS+JavaScript

    HTML5期末大作业:网站--仿游戏官网(龙之谷)HTML+CSS+JavaScript ~ 学生HTML个人网页作业作品下载 ~ web课程设计网页规划与设计 ~大学生个人网站作业模板 ~简单个人网 ...

  4. 美通企业日报 | 网龙互动白板获德国红点设计奖;芬美意在华开设全球最大食用香精厂...

    要闻 科学家重新界定益生菌定义,因营销媒体业滥用益生菌一词 戴尔易安信拿下2018年全球服务器行业份额.出货量双料冠军 网龙最新互动白板AP-V7获德国红点设计大奖 芬美意在华开设全球最大食用香精厂 ...

  5. Poser v7.0 1DVD(3D 角色动画)

    Ulead产品: Ulead.Videostudio.v10.Plus-ISO 1CD Ulead.Video.Studio.9.CHS-ISO 1CD(简体中文,会声会影 是一套专为个人及家庭所设计 ...

  6. 使用Chrome控制台进行3D模型编辑的尝试

    前言:3D模型编辑的核心是对顶点位置和纹理颜色的编辑,这个研究的目的在于寻找一种通过编程方式直接对模型进行编辑的方法,这种编辑方法和时下流行的通过鼠标点选.拖拽进行编辑的方法之间的关系,和前端编程中& ...

  7. 创作风格化的3d角色插图视频教程

    探索使用ZBrush.Maya和Substance Painter设计角色并使其成为最终3D图像的过程,并在Marvelous Designer和Photoshop中处理辅助设计工作.这个由资深角色艺 ...

  8. 如何利用Shader来渲染游戏中的3D角色

    杨航最近在学Unity3D 本文主要介绍一下如何利用Shader来渲染游戏中的3D角色,以及如何利用Unity提供的Surface Shader来书写自定义Shader. 一.从Shader开始 ...

  9. 网龙面试后多久有回应_回应面试问题

    网龙面试后多久有回应 For the record, asking someone these questions probably isn't the best way to get a deep ...

  10. 3D角色模型欣赏:韩国3D设计师 Jiwoong Choi 科幻3d角色

    今天给大家分享来自韩国3D设计师 Jiwoong Choi 的科幻3d角色作品,整体造型炫酷,欢迎欣赏 ![upload-images.jianshu.io/upload_images/2425227 ...

最新文章

  1. ***杂记-2013-07-12
  2. (案例)使用Cookie保存用户最后一次访问的时间
  3. 单片机外部中断实验C语言程序,STC89C52单片机外部中断0实验
  4. java写一个服务定时采集数据_java实现定时任务解决方案
  5. Helpful C Tools:source、executables、debugging and performance tuning
  6. SQL Server 2008空间数据应用系列五:数据表中使用空间数据类型
  7. 5月第3周安全回顾 思科路由器Rootkit现身 企业需漏洞管理
  8. java android实例_Android开发精典案例60个
  9. 苹果执行请求时出错_错误报告 - Apple Developer
  10. 手把手教你使用QGIS制作地图
  11. 集成建行聚合支付踩过的坑,有些槽不吐不快
  12. css 间隙,CSS间隙属性
  13. 你全记住了 ,你就是老中医
  14. 打造属于自己的量化投资系统9——支持向量机SVM算法在股票预测涨跌中应用
  15. 软考——RAID技术及网络存储技术知识小结
  16. proteus常用元件图示和名称介绍
  17. python实现简单的ps色阶调整过程
  18. 教学资源库建设计算机专业,教学资源库建设计算机应用论文
  19. 用html css JavaScript写一个功能全面的王者荣耀轮播图 (仿淘宝京东轮播图)通俗易懂
  20. linux下架设sendmail邮箱_原理篇

热门文章

  1. 软件测试方法——静态测试与动态测试
  2. 物联数采网关在电力能效管理系统中的应用
  3. windows电脑版便签工具哪款好用?
  4. VMware中安装win7虚拟机后共享问题的解决
  5. call、aplay 和 bind 三者之间的区别?
  6. linux 终端使用aplay播放wav
  7. OpenCasCade——给定B样条曲线上的一点,求出过该点的切向量或法向量
  8. 通过搜狗搜索爬取微信公众号文章,小程序版可体验
  9. quartz定时任务xml配置
  10. Python实现粒子群(PSO)带惩罚函数多目标优化