Galacean Runtime 文档系统技术解析与使用指南
文档系统架构概述
Galacean Runtime 的文档系统基于 Nextra 构建,这是一个现代化的文档框架,提供了丰富的功能和灵活的扩展性。该系统采用 MDX 格式作为主要文档格式,这种格式结合了 Markdown 的简洁性和 React 组件的强大功能,为技术文档编写提供了更多可能性。
核心功能详解
智能目录系统(TOC)
文档系统内置了自动生成的目录功能,通过分析文档中的标题层级结构(H1-H6),自动在页面右侧生成可交互的目录导航。这个功能不仅提升了文档的可读性,还能帮助作者检查文档结构是否合理。
最佳实践建议:
- 保持标题层级清晰,建议最多使用3-4级标题
- 标题文字应简洁明了,准确描述章节内容
- 避免跳过标题层级(如H1后直接使用H3)
增强型文档格式(MDX)
MDX 格式允许在 Markdown 中直接嵌入 React 组件,这为技术文档带来了更多交互性和表现力。系统提供了一系列内置组件,可以满足大多数技术文档的需求。
基础用法示例:
这是一段普通的Markdown文本。
<CustomComponent prop1="value1">
这里可以包含更多内容
</CustomComponent>
突出显示组件(Callout)
Callout 组件是技术文档中常用的提示框,用于突出重要信息。系统提供了四种预设样式:
- 信息提示(info) - 蓝色背景,用于一般性说明
- 警告提示(warning) - 黄色背景,用于潜在问题提醒
- 正向提示(positive) - 绿色背景,用于最佳实践或推荐做法
- 负面提示(negative) - 红色背景,用于严重警告或不推荐做法
组件使用示例:
<Callout type="warning">
使用此功能前请确保已正确初始化物理引擎系统
</Callout>
图片对比组件(Comparison)
Comparison 组件专为需要展示前后对比的技术场景设计,可以并排显示两张图片并添加说明文字。
典型应用场景:
- 参数调整前后的效果对比
- 不同算法实现的视觉差异
- 版本更新前后的界面变化
使用示例:
<Comparison
leftSrc="/before.png"
leftText="优化前效果"
rightSrc="/after.png"
rightText="优化后效果"
/>
高级图片处理
文档系统提供了增强的图片处理能力:
- 点击放大功能 - 通过专用Image组件实现
- 图片说明文字 - 支持为图片添加详细说明
- 响应式布局 - 自动适应不同屏幕尺寸
推荐用法:
import { Image } from '@/mdx'
<Image
src="/example.png"
figcaption="图1: 系统架构示意图"
/>
代码展示最佳实践
代码高亮系统
文档系统支持丰富的代码展示功能:
-
行内代码高亮 - 在段落中突出显示代码片段
使用`console.log(){:js}`输出调试信息
-
代码块增强功能:
- 显示行号
- 指定文件名
- 高亮特定行
- 关键词突出显示
完整示例:
```ts {3,5-7} showLineNumbers filename="scene.ts" /Entity/
function createScene() {
const root = scene.createRootEntity();
const cameraEntity = root.createChild();
cameraEntity.transform.setPosition(0, 0, 10);
cameraEntity.addComponent(Camera);
cameraEntity.addComponent(OrbitControl);
}
```
代码展示建议
- 对于关键代码,使用行高亮引导读者注意力
- 复杂示例建议添加文件名说明
- 重要概念可使用关键词高亮强化记忆
- 保持代码示例简洁,删除无关代码
文档管理规范
新增技术文档流程
-
文件创建:
- 在适当分类下创建.mdx文件
- 路径即路由,需规划合理
-
元数据配置:
--- title: "文档标题" group: "分类标签" banner: "/header-image.png" ---
-
内容编写:
- 遵循技术文档写作规范
- 合理使用各种组件增强表现力
-
目录配置:
- 通过_meta.json管理文档顺序
- 确保侧边栏导航清晰
多语言支持
系统支持国际化文档,只需在对应语言目录(如/docs/en)中创建相同结构的文档即可实现多语言版本。
高级功能应用
复杂示例管理
对于需要多个文件配合的复杂示例,可以采用模块化组织方式:
- 主文件(index.ts)作为入口
- 配置文件分离(gui-config.ts)
- 资源定义单独管理(resources.json)
系统会自动分析依赖关系,在展示时提供完整的工作区环境。
技术博客撰写
技术博客支持更丰富的元数据:
---
title: "深入理解Galacean Runtime渲染管线"
group: "图形渲染,性能优化"
banner: "/rendering-pipeline.png"
published: "2024-03-15"
author:
name: "张工程师"
avatar: "/avatar.png"
website: "https://example.com"
summary: "本文详细解析了Galacean Runtime的渲染管线工作原理..."
---
常见问题解决方案
-
图片缩放不生效:
- 确保使用专用Image组件
- 检查图片URL有效性
- 避免混用Markdown图片语法和HTML img标签
-
代码高亮异常:
- 确认语言类型标注正确
- 检查高亮语法格式
- 避免特殊字符干扰
-
组件渲染问题:
- 验证组件名称拼写
- 检查props类型匹配
- 确认组件是否已注册
通过掌握这些文档系统的特性和最佳实践,可以创建出专业、易读且交互性强的技术文档,更好地展示Galacean Runtime的各项功能和特性。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考