3D建模

A collection of 1733 posts
3D建模

Cocos Creator:引擎定制工作流程

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 引擎定制工作流程 从 Cocos Creator v3.5.0 开始,TypeScript 和 engine-native 两个部分合并在一起了,在 GitHub 上开源。地址是: * Cocos 引擎:GitHub | Gitee engine-native 在 cocos-engine/native 目录下。 建议通过 GitHub 的 fork 工作流程来维护自己定制的代码,以便在将来引擎升级时,可以方便地将定制的部分更新上去,具体操作方式请阅读 Fork a repo。如果你愿意帮助 Cocos 越做越好,欢迎在 GitHub 提交你的修改,请参考 如何向 Cocos 提交代码。
6 min read
3D建模

Cocos Creator:动态合图

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 动态合图 降低 DrawCall 是提升游戏渲染效率一个非常直接有效的办法,而两个 DrawCall 是否可以合并为一个 DrawCall 的其中一个重要因素就是这两个 DrawCall 是否使用了同一张贴图。 Cocos Creator 提供了 动态合图(Dynamic Atlas)的功能,它能在项目运行时动态地将贴图合并到一张大贴图中。当渲染一张贴图的时候,动态合图系统会自动检测这张贴图是否已经被合并到了图集(图片集合)中,如果没有,并且此贴图又符合动态合图的条件,就会将此贴图合并到图集中。 动态合图是按照 渲染顺序 来选取要将哪些贴图合并到一张大图中的,这样就能确保相邻的 DrawCall 能合并为一个 DrawCall(又称“合批”)。 启用、禁用动态合图 Cocos Creator 在初始化过程中,会根据不同的平台设置不同的 CLEANUP_IMAGE_CACHE 参数,当禁用
2 min read
Cocos Creator:i18n 游戏多语言支持
3D建模

Cocos Creator:i18n 游戏多语言支持

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 i18n 游戏多语言支持 Cocos Creator 从 3.1 版本起,提供了 i18n 游戏多语言扩展插件,目前支持 Label 和 Sprite 组件,可在 Cocos Store 中下载使用。 注意:从 v3.6 起,引擎已内置 本地化(L10N) 提供功能更丰富、强大的多语言功能。如果您使用的是 v3.6 之后的版本我们建议您使用该功能。 什么是 i18n i18n 是 国际化 的简称,来源是英文单词 internationalization 的首末字符 i 和 n,
7 min read
Cocos Creator:热更新管理器 AssetsManager
3D建模

Cocos Creator:热更新管理器 AssetsManager

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 热更新管理器 AssetsManager 这篇文档将全面覆盖热更新管理器 AssetsManager 的设计思路,技术细节以及使用方式。由于热更新机制的需求对于开发者来说可能各不相同,在维护过程中开发者也提出了各个层面的各种问题,说明开发者需要充分了解热更新机制的细节才能够定制出符合自己需要的工作流。所以这篇文档比较长,也尽力循序渐进得介绍热更新机制,但是并不会介绍过多使用层面的代码,对于想要先了解具体如何使用热更新机制来更新自己游戏的开发者,可以先尝试我们提供的一个 简易教程。 资源热更新简介 资源热更新是为游戏运行时动态更新资源而设计的,这里的资源可以是图片,音频甚至游戏逻辑。在游戏漫长的运营维护过程中,你将可以上传新的资源到你的服务器,让你的游戏跟踪远程服务器上的修改,自动下载新的资源到用户的设备上。就这样,全新的设计,新的游玩体验甚至全新的游戏内容都将立刻被推送到你的用户手上。重要的是,你不需要针对各个渠道去重新打包你的应用并经历痛苦的应用更新审核! 资源热更新管理器经历过三个重要的
19 min read
Cocos Creator:资源热更新教程
3D建模

Cocos Creator:资源热更新教程

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 资源热更新教程 前言 之所以这篇文档的标题为教程,是因为目前 Cocos Creator 资源热更新的工作流还没有彻底集成到编辑器中,不过引擎本身对于热更新的支持是完备的,所以借助一些外围脚本和一些额外的工作就可以达成。 本篇文档的范例工程可以从 GitHub | Gitee 获取(master 分支)。 使用场景和设计思路 资源热更新的使用场景相信游戏开发者都非常熟悉,对于已发布的游戏,在游戏内通过从服务器动态下载新的游戏内容,来时刻保持玩家对游戏的新鲜感,是保持一款游戏长盛不衰非常重要的手段。当然热更新还有一些其他的用途,不过在此不再深入讨论,我们下面将主要讨论 Cocos Creator 对热更新支持的原理和手段。 Cocos Creator 中的热更新主要源于 Cocos 引擎中的 AssetsManager 模块对热更新的支持。它有个非常重要的特点: 服务端和本地均保存完整版本的游戏资源,热更新过程中通过比较服务端和本地版本的差异来决定更新哪些内容。这样即可天然支持跨版本更
10 min read
Cocos Creator:如何向 Cocos 提交代码
3D建模

Cocos Creator:如何向 Cocos 提交代码

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 如何向 Cocos 提交代码 Cocos Creator 是一个开源引擎,连同范例、文档都是开源的。 在你开发游戏的过程中,当发现了引擎、文档或者范例不够完善的地方,如果仅仅是向官方团队提出建议,官方团队可能会因为人力资源的紧张而无法及时跟进。在此我们欢迎所有用户主动向我们提交 PR,帮助 Cocos 越做越好。引擎有 Bug?提 PR!范例难看?提 PR!API 注释不清晰?提 PR!文档有错别字?提 PR!想要把你的宝贵修改贡献给游戏社区?提 PR!以下几个是目前官方比较常用的开源仓库,这些仓库都可以提交 PR。 * TypeScript 引擎:GitHub | Gitee * engine-native 引擎:GitHub | Gitee
9 min read
Cocos Creator:UI 组件
3D建模

Cocos Creator:UI 组件

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 UI 组件 UI 组件面板 为了方便布局,编辑器内提供了许多预设的 UI 组件。 1、找到编辑器顶部主菜单中的 开发者 -> UI 组件 查看。 2、点击后可打开如下的面板: 该面板由两部分组成,左边栏列出了目前引擎支持的 UI 种类,右侧栏提供了部分示例,开发者可按需使用。 在 HTML 中使用 在 HTML 使用 UI 组件非常简单,只需要将对应代码复制到你的 HTML 文件中,即可使用。 在扩展面板时使用 在扩展编辑器面板时,可以使用 json 方式进行配置。理论上所有带 value 属性的 UI 组件都可以用于扩展编辑器面板,下面列出常见的几种:
2 min read
3D建模

Cocos Creator:面板系统

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 面板系统 扩展默认情况下是没有界面显示的,如果一个扩展需要实现界面交互,就需要使用到面板系统相关功能。 面板的定义 在 package.json 里可以在 panels 字段定义一个或者多个面板,如下所示: { "name": "hello-world", "panels": { "default": { "title": "world panel", "type": "dockable", "main": "./dist/panels/default", "icon": "./static/default.png" }, "list": { "title": "world list", "type": "simple", "main": "./dist/pane
4 min read
3D建模

Cocos Creator:配置系统

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 配置系统 Cocos Creator 扩展提供了一套配置管理机制,用于在扩展保存用户设置和数据。 配置类型 配置类型有两种: 1. 编辑器配置(editor) 2. 项目配置(project) 编辑器配置 编辑器配置用于存放一些编辑器相关的用户设置和数据,分成三个优先级,从高到低今次为: local -> global -> default 在进行配置数据获取时,会优先采用 local 中的配置项,若 local 中无对应配置项,则会采用 global 中的配置项,若 global 中也找不到对应配置项,则会采用默认的 default 配置。 项目配置 项目配置用于存放一些和项目相关的用户设置和数据,分成两优先级,从高到低为: local -> default 和
3 min read
3D建模

Cocos Creator:消息系统

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 消息系统 Cocos Creator 中有许多独立运行进程,且这些进程间是相互隔离的。在编辑器内需要与其他功能进行交互的时候,需要通过 "消息机制" 进行交互。 编辑器里的"消息系统"是 IPC(进程间通信)的功能扩展封装。这个系统承担起了整个编辑器内通讯交互的重担。 更多关于多进程构架和跨进程通信的介绍请参考文档 基础结构. 消息类型 Cocos Creator 系统内的消息有两种类型: 1. 普通消息:主动发送某条消息到某个功能(扩展) 2. 广播消息:某个功能(扩展)完成了一个操作后向所有人发送通知,告知操作已经完成 普通消息 可以理解成一种对外的接口,例如引擎的 场景编辑器 模块已经定义好了一个用于查询节点的 query-node 消息,如下所示: { "name": "scene", "contributions": { "messages": { "query-node": {
4 min read
3D建模

Cocos Creator:扩展包的定义

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 扩展包的定义 扩展包需要在 package.json 文件里预先定义好所有功能以及一些基础信息,如下所示: { "package_version": 2, "version": "1.0.0", "name": "first-panel", "tilte": "i18n:first-panel.title", "description": "i18n:first-panel.description", "author": "Cocos Creator", "editor": ">=3.4.2", "main": "./dist/main.js", "dependencies": { ... }, "devDependencies": { ... }, "panels": { ... }, "contributions": { }, "scripts": { "build"
2 min read
3D建模

Cocos Creator:基础结构

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 基础结构 在编写扩展之前,我们首先需要了解一下 Cocos Creator 内,扩展的基础结构。 Electron Cocos Creator 编辑器是基于 GitHub 的 Electron 内核开发。 Electron 是一个集成了 Node.js 和 Google Chromium 的跨平台开发框架。 多进程机制 在 Electron 的架构中,一份应用程序由主进程和渲染进程组成,其主进程负责管理平台相关的调度,如窗口的开启关闭、菜单选项、基础对话框等等。而每一个新开启的窗口就是一个独立的渲染进程。每个进程独立享有自己的 JavaScript 内容,且彼此之间无法直接访问。当需要在进程之间传递数据时,需要使用进程间通信(IPC)机制。 相关功能可以通过阅读 Electron's introduction document 更深入的理解
3 min read
3D建模

Cocos Creator:自定义快捷键

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义快捷键 编辑器内的快捷键由 "快捷键管理器" 统一管理。每一个快捷键可以绑定一个消息,当快捷键按下的时候,会触发绑定的消息。 定义快捷键 定义快捷键需要在 package.json 的 contributions.shortcuts 字段中进行,如下所示: // package.json { "name": "hello-world", "panels": { "default": { "main": "./panel.js" } }, "contributions": { "messages": { "undo": { "title": "i18n:hello.messages.undo.title", "methods": ["say-undo"] }
2 min read
Cocos Creator:自定义偏好设置面板
3D建模

Cocos Creator:自定义偏好设置面板

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义偏好设置面板 偏好设置面板简介 在顶部菜单栏可找到 Cocos Creator -> 偏好设置 菜单,如下图所示: 点击可打开偏好设置面板,如下图示: 偏好设置面板分成左右两侧: * 左侧显示的是提供配置项目的功能扩展的名字。 * 右侧是根据配置渲染出来的操作面板。 面板上的修改,会立即修改到对应的配置项目上,更多关于 偏好设置 面板的介绍,请参考文档 偏好设置。 自定义面板 Cocos Creator 允许每个扩展注册自己的编辑器配置,然后在偏好设置面板内显示。 偏好设置控制的是编辑器相关的配置,会作用到所有项目上,如果只想增加特定项目的配置,请参考文档 自定义项目设置面板。 偏好设置的两种方式 偏好设置允许以两种方式显示配置: 1. 通用配置 2. 实验室配置 通用设置直接以选项卡的形式展示,而实验室开关则单独一个选项卡集中展示。 * 当插件提供的功能比较稳定时建议将配置数据放在通用功能内。 * 当插件提供的功能处于开发阶段时建议将功能的开关配置
4 min read
Cocos Creator:自定义项目设置面板
3D建模

Cocos Creator:自定义项目设置面板

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义项目设置面板 面板介绍 项目设置 里存放的是和项目运行相关的配置,这部分配置存放在项目目录下的 settings 文件夹中,需要纳入版本管理,多人共享配置,否则可能导致不同机器上运行不一致的问题。 可在顶部菜单栏中找到 项目 -> 项目设置 菜单,如下图所示: 点击后可打开设置设置面板,如下图所示: 项目设置面板左侧是功能模块选项卡,右侧则对应功能的配置修改界面。 我们可以通过自定义此面板的显示数据,为项目新增自定义配置,借助项目设置面板实现项目配置的可视化管理。 如果想对所有项目都生效,则需要自定义编辑器相关的配置,请参考文档 自定义偏好设置。 自定义项目设置 功能允许一个我们注册多个选项卡,所以左侧选项卡上会有一行小字,标示选项卡属于哪一个功能。 数据配置与显示 自定义项目设置需要依赖数据配置,需要先在 contributions.profile.project 里定义好相关数据字段。 注意:项目设置里的配置数据,都应该存放在 profile.project 字段中
3 min read
Cocos Creator:自定义构建流程
3D建模

Cocos Creator:自定义构建流程

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义构建流程 对构建流程进行自定义的前提是需要对构建发布的整体流程有所了解,不熟悉的开发者建议先阅读 构建流程简介与常见问题指南。 为了能更好的理解本篇文档内容,在继续阅读本文档之前,推荐大家先阅读 Cocos Creator 扩展编辑器 文档,了解扩展开发相关知识。 为方便书写,本文中我们约定将用于自定义构建流程的扩展简称为: 构建扩展 构建扩展模板 Cocos Creator 提供了快捷方式生成 构建扩展模板:点击 项目 -> 新建构建扩展包 菜单即可生成 cocos-build-template,如下图所示: 注意:生成此扩展模板时会选择其作用于 项目 还是 全局,建议选择 项目,除非真的需要将此扩展作用于所有项目。 下面我们将重现此扩展包的制作过程,并逐一讲解细节。 创建扩展 对扩展的创建和开发不太熟悉的开发者可参考文档 入门示例,创建一个名为 custom-build-example 的扩展。 注意:为了方便与 cocos-build-template
16 min read
Cocos Creator:扩展构建过程
3D建模

Cocos Creator:扩展构建过程

推荐:将NSDT场景编辑器加入你的3D工具链 3D工具集:NSDT简石数字孪生 扩展构建过程 要构建平台插件,需要通用编辑器插件格式。插件的基本结构请参考 第一个扩展文档 。要扩展构建功能,需要了解构建的整个过程。请阅读构建过程简介和常见问题解答指南文档。 快速入门 单击编辑器菜单栏中的“项目->新建扩展”,然后选择“全局/项目”以创建生成扩展包。 如果选择“全局”,则构建扩展将应用于所有 Cocos Creator 项目。全球的路径是: * 视窗:%USERPROFILE%\.CocosCreator\extensions * macOS:$HOME/.CocosCreator/extensions 如果选择“项目”,则会将构建扩展应用于指定的 Cocos Creator 项目。项目的路径是: * $Your project address/extensions 创建构建扩展后,请注意控制台中插件的生成路径。单击路径以在操作系统的文件管理器中打开构建扩展包。 1.
13 min read
3D建模

Cocos Creator:自定义属性检查器面板

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义属性检查器面板 有自定义属性检查器需求的开发者建议先参考文档 通过修饰器定义属性,若该文档满足需求,建议优先使用该文档中的方法。 属性检查器 作为 Cocos Creator 里显示当前选中状态的模块,为大家提供了一些基础的扩展能力。 在 属性检查器 里,定义了两个层级的数据: 1. 选中的物体主类型 2. 渲染主类型内容时,内容里包含的子数据类型 当在 层级管理器/资源管理器 中选中一个 节点/资源 时,Cocos Creator 会将物体被选中的消息进行广播。当 属性检查器 接收到消息后,会检查被选中的物体的类型,例如选中的是节点,那么类型便是 node。 针对两种类型,允许注册两种渲染器: 1. 主类型渲染器 2. 主类型渲染器接收数据开始渲染的时候,允许附带子类型渲染器 示例里选中的是 node,
7 min read
3D建模

Cocos Creator:自定义资源数据库

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义资源数据库 所有项目内的资源文件都是通过资源数据库进行管理,其中项目内的 assets 目录存放的是当前项目的资源,引擎仓库里 editor/assets 里存放的是引擎内置的资源(如:常见的图片、脚本等)。 当我们在扩展内使用了资源时,需要将扩展内的资源文件夹注册到资源数据库里,并在扩展发布时将资源随着扩展一起发布。 通过本文我们将学会如何注册一个资源文件夹,并在脚本里使用资源。 注册配置 资源注册需要在 contributions 中使用 asset-db 字段进行配置,如下所示: { "name": "test-package", "contributions": { "asset-db": { "mount": { "path": "./assets", "readonly": true } } } }
3 min read
3D建模

Cocos Creator:扩展“资源”面板

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 扩展“资源”面板 扩展右键单击菜单 右键菜单显示机制是在显示实时菜单数据之前获取实时菜单数据。扩展在自己的模块中预注册以获取 Assets 面板的右键菜单显示事件,并通过事件返回要显示的菜单数据,然后统一显示。注册的菜单通常显示在现有菜单之后。assetspackage.json 假设“资源”面板中的位置 () 具有右键单击菜单事件,则当前支持的扩展位置 () 为:wherewhere * createMenu-- 创建资产的两个入口点:一个是面板左上角的 + 按钮;另一个是右键单击菜单中的“创建”选项。 * dbMenu-- 资产数据库根节点 * assetMenu-- 资产通用节点 * panelMenu-- 面板的空白区域 具体实施步骤: * 在编辑器顶部的菜单栏中选择扩展 -->创建扩展,并根据需要在全局/项目目录中创建新扩展。然后,扩展包将在根/项目目录的目录中生成。extensions 打开扩展包的文件并配置属性,其中引入了该文件。其他属性(
5 min read
3D建模

Cocos Creator:调用引擎 API 和项目脚本

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 调用引擎 API 和项目脚本 在扩展中,您可以定义一个特殊的场景脚本文件,该文件将与项目目录中的脚本位于同一运行时中,具有相同的运行时环境。assets\ 在场景脚本中,您可以调用引擎和其他项目脚本,使用此功能,我们可以API * 查询并遍历场景中的节点以获取或修改节点数据 * 调用与节点上的引擎组件相关的函数以完成作业 注册场景脚本 首先,将一个字段添加到 的属性中,其值是相对于扩展包目录的脚本文件的路径。例:scenecontributionspackage.json { "contributions": { "scene": { "script": "./dist/scene.js" } } } 场景脚本模板 在目录中创建一个 new 并编写以下代码。scene.tssrc export function load() {}; export function unload() {}; expor
2 min read
3D建模

Cocos Creator:自定义消息

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义消息 在 Cocos Creator 编辑器架构中,所有的交互都是通过消息通信实现的,本文将讲解如何自定义一条消息。 查看公开消息列表 在编辑器的顶部菜单栏中找到 开发者 -> 消息列表,可以打开消息管理面板,面板里显示了编辑器各系统公开的消息以及其说明。 定义一条消息 只有在 package.json 文件的 contributions.messages 字段里定义过的消息才能被使用。消息的定义如下所示: { "name": "hello-world", "contributions": { "messages": { "test-messasge": { "public": false, "description": "", "doc": "", "methods": []
2 min read
3D建模

Cocos Creator:自定义主菜单

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 自定义主菜单 编辑器顶部有一栏主菜单,在扩展内可以方便的在这个菜单栏添加自己的菜单。 注册菜单 当扩展插件需要添加菜单的时候,只需要填写 contributions.menu 对象。例如我们在 "扩展" 菜单里增加一个菜单项,可以修改 package.json,代码示例如下: { // package.json "name": "hello-world", "contributions": { "messages": { "open-panel": { "methods": ["openPanel"] } }, "menu": [ { "path": "i18n:menu.extension", "label": "Open Hello World",
2 min read
Cocos Creator:上架扩展到资源商店
3D建模

Cocos Creator:上架扩展到资源商店

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 上架扩展到资源商店 Cocos Creator 内置了 扩展商店,可供用户浏览、下载和自动安装官方或者第三方扩展、资源。同时用户也可以将自己开发的扩展、美术素材、音乐音效等资源提交到扩展商店以便分享或者售卖。下面我们以提交扩展为例来讲解具体的提交流程。 打包扩展 扩展在提交之前需要根据打包规则进行打包,关于扩展打包的详细讲解,请参考文档 安装与分享。 提交扩展 访问 Cocos 开发者中心 并登录,然后进入 商店 栏目,点击右上方的 发布新资源。 然后进入 资源类别 页面,填写 名称 和 类别,勾选已阅读协议。 * 名称:插件显示在扩展商店中的名称。需要注意的是,名称一经确认后不可更改,请谨慎填写。 * 类别:要提交的资源类别,我们这里选择 Creator 扩展 ->
4 min read
Cocos Creator:安装与分享
3D建模

Cocos Creator:安装与分享

推荐:将NSDT场景编辑器及加入你的3D工具链 3D工具集:NSDT简石数字孪生 安装与分享 安装位置 Cocos Creator 在启动项目的过程中会搜索并加载 项目 路径下的扩展。 项目 扩展存放的地址为: * ${你的项目地址}/extensions 安装扩展 可以通过三种方式获得扩展: * 其他开发者打包分享,请参考下文 打包扩展。 从 Dashboard->商城 下载。 * 从 Cocos Store·资源商城 页面下载。 获得扩展压缩包(zip 文件)后,在编辑器顶部菜单栏中点击 扩展 -> 扩展管理器: 点击后可打开如下图所示的 扩展管理器 面板。 在 扩展管理器 中选择 项目(上图所示 1) 选项卡,点击 (上图所示 3)
4 min read
NSDT场景编辑器 | NSDT 数字孪生 | GLTF在线编辑器 | 3D模型在线转换 | UnrealSynth虚幻合成数据生成器 | 3D模型自动纹理化工具
2023 power by nsdt©鄂ICP备2023000829号