- 用户指南
- Components
- 寻路
- 动画组件
- 资源组件
- 音频组件(AudioComponent)
- 音频侦听器(AudioListener)
- 音频源(AudioSource)
- 音频过滤器(AudioFilter)(仅限专业版)
- 混响区域(ReverbZone)
- 麦克风(Microphone)
- 物理组件(PhysicsComponent)
- 箱体碰撞体(BoxCollider)
- 胶囊碰撞体(CapsuleCollider)
- 角色控制器(CharacterController)
- 角色关节(CharacterJoint)
- 可配置关节(ConfigurableJoint)
- 恒定力(ConstantForce)
- 固定关节(FixedJoint)
- 铰链关节(HingeJoint)
- 网格碰撞体(MeshCollider)
- 物理材质(PhysicsMaterial)
- 刚体(Rigidbody)
- (SphereCollider)
- 弹簧关节(SpringJoint)
- 交互布(InteractiveCloth)
- 蒙皮布(SkinnedCloth)
- 车轮碰撞体(WheelCollider)
- 游戏对象(GameObject)
- 图像效果(ImageEffectScripts)
- 高光溢出和镜头光晕(BloomandLensFlare)
- 模糊(Blur)
- 相机运动模糊(MotionBlur)
- 颜色修正曲线(ColorCorrectionCurve)
- 颜色修正(ColorCorrection)
- 颜色修正查找纹理(ColorCorrectionLookupTexture)
- 对比度增强(ContrastEnhance)
- 对比度拉伸(ContrastStretch)
- 起皱(Crease)
- 视野深度(DepthofField)3.4
- 视野深度(DepthofField)
- 边缘检测(EdgeDetection)
- 鱼眼(Fisheye)
- 全局雾(GlobalFog)
- 发光(Glow)
- 灰度(Grayscale)
- 运动模糊(MotionBlur)
- 噪波和颗粒(NoiseAndGrain)
- 噪波(Noise)
- 屏幕叠加(ScreenOverlay)
- 棕褐色调(SepiaTone)
- 边缘检测效应
- 阳光照射(SunShaft)
- 屏幕空间环境光遮蔽(SSAO)(ScreenSpaceAmbientOcclusion(SSAO))
- 倾斜位移(TiltShift)
- 色调映射(Tonemapping)
- 旋转(Twirl)
- 渐晕(Vignetting)(和色差(ChromaticAberration))
- 状态同步详细信息
- 旋涡
- 设置管理器(SettingsManager)
- 网格组件(MeshComponents)
- 网络组
- 效果
- 渲染组件
- 变换组件(TransformComponent)
- UnityGUI组
- 向导
- 地形引擎指南(TerrainEngineGuide)
- 树木创建器指南
- 动画视图指南
- GUI脚本指南
- 网络参考指南
- 移动设备上的网络连接
- 高级网络概念
- Unity中的网络元素
- RPC详细信息
- NetworkLevelLoading
- 主服务器
- 最小化网络带宽
- 社交API
- 内置着色器指南
- Unity的后台渲染
- 着色器参考
- ShaderLab语法:Shader
- ShaderLab语法:Properties
- ShaderLab语法:子着色器(SubShader)
- ShaderLab语法:Pass
- ShaderLabsyntax:Color,Material,Lighting
- ShaderLab语法:剔除和深度测试(Culling&DepthTesting)
- ShaderLab语法:纹理组合器(TextureCombiners)
- ShaderLab语法:雾(Fog)
- ShaderLab语法:Alpha测试(Alphatesting)
- ShaderLab语法:混合(Blending)
- ShaderLab语法:通道标记(PassTags)
- ShaderLab语法:名称(Name)
- ShaderLab语法:绑定通道(BindChannels)
- ShaderLab语法:使用通道(UsePass)
- ShaderLab语法:GrabPass
- ShaderLab语法:子着色器标记(SubShaderTags)
- ShaderLab语法:回退(Fallback)
- ShaderLab语法:自定义编辑器(CustomEditor)
- ShaderLab语法:其他命令
- ShaderLab语法:Pass
- 高级ShaderLab主题
- ShaderLab内置值
- 其他
- 网络视图
- 导航网格 (Navmesh) 和寻路 (Pathfinding)(仅限专业版 (Pro))
- Mecanim 动画系统
- 动画状态机
- 混合树 (Blend Tree)
- 在 Mecanim 中使用动画曲线 (Animation Curves)(仅限专业版 (Pro))
- 循环动画片段
- Animation State Machine Preview (solo and mute)
- 动画参数
- 旧动画系统
- 使用类人动画
- 动画层
- 资源导入与创建
- 音轨模块
- 减少文件大小
- 光照贴图 UV
- 资源准备和导入
- 如何安装或升级标准资源 (Standard Assets)?
- FBX 导出指南
- 从 Maya 中导入对象
- 从 Cinema 4D 中导入对象
- 从 3D Studio Max 中导入对象
- 从 Cheetah3D 中导入对象
- 从 Modo 中导入对象
- 从 Lightwave 中导入对象
- 从 Blender 中导入对象
- 为优化性能建模角色
- 如何使用法线贴图 (NormalMaps)?
- 如何修正已导入模型的旋转?
- 程序材质
- 如何使用水?
- 分析器(仅限专业版)
- 绘制调用批处理
- 遮挡剔除(仅限专业版)
- Unity 中的高动态范围 (High Dynamic Range) 渲染
- 在 Unity 4 中使用 DirectX 11
- 文本场景文件格式(仅限专业版)
- 使用网络播放器模版
- 平台依赖编译
- 日志文件
- 首选项
- 粒子系统曲线编辑器
- 渐变编辑器
- 怎样制作网格粒子发射器?(旧粒子系统)
- 深入了解光照贴图
- 光照贴图快速入门
- 着色器
- 动画脚本(旧版)
- 自定义
- 布局模式
- 扩展编辑器
- 网络实例化
- 材质和着色器
- 如何使用细节纹理?
- 着色器:顶点和片段程序
- Unity 中的阴影
GUI皮肤
GUISkins 是一组可以应用到 GUI 的 GUIStyles 。每个控件 (Control) 类型都有各自的样式 (Style) 定义。皮肤使您能够将一种样式应用于整个 UI,而不只是应用于单个控件 (Control)。
检视器 (Inspector) 中的 GUI 皮肤 (GUI Skin)
如需创建 GUISkin,请在菜单栏上选择资源 (Assets) -> 创建 (Create) -> GUI 皮肤 (GUI Skin) 。
GUISkin 是 UnityGUI 系统的一部分。有关 UnityGUI 的更多详细信息,请参阅 GUI 脚本指南.
属性
GUI 皮肤中的所有属性都是一个独立的 GUIStyle 。有关如何使用样式 (Style) 的更多信息,请参阅GUIStyle 页。
属性: | 功能: |
---|---|
字体 (Font) | 用于 GUI 中每个控件 (Control) 的全局字体。 |
盒子 (Box) | 用于所有盒子的样式 |
按钮 (Button) | 用于所有按钮的样式 |
切换键 (Toggle) | 用于所有切换键的样式 |
标签 (Label) | 用于所有标签的样式 |
文本框 (Text Field) | 用于所有文本框的样式 |
文本区域 (Text Area) | 用于所有文本区域的样式 |
窗口 (Window) | 用于所有窗口的样式 |
水平滑动条 (Horizontal Slider) | 用于所有水平滑动条的样式 |
水平滑块 (Horizontal Slider Thumb) | 用于所有水平滑块按钮的样式 |
垂直滑动条 (Vertical Slider) | 用于所有垂直滑动条的样式 |
垂直滑块 (Vertical Slider Thumb) | 用于所有垂直滑块按钮的样式 |
水平滚动条 (Horizontal Scrollbar) | 用于所有水平滚动条的样式 |
水平滚动条滑块 (Horizontal Scrollbar Thumb) | 用于所有水平滚动条滑块按钮的样式 |
水平滚动条向左按钮 (Horizontal Scrollbar Left Button) | 用于所有水平滚动条向左按钮的样式 |
水平滚动条向右按钮 (Horizontal Scrollbar Right Button) | 用于所有水平滚动条向右按钮的样式 |
垂直滚动条 (Vertical Scrollbar) | 用于所有垂直滚动条的样式 |
垂直滚动条滑块 (Vertical Scrollbar Thumb) | 用于所有垂直滚动条滑块按钮的样式 |
垂直滚动条向上按钮 (Vertical Scrollbar Up Button) | 用于所有垂直滚动条向上按钮的样式 |
垂直滚动条向下按钮 (Vertical Scrollbar Down Button) | 用于所有垂直滚动条向下按钮的样式 |
自定义 1 - 20 | 可用于任何控件 (Control) 的其他自定义样式 (Styles) |
自定义样式 (Custom Styles) | 可用于任何控件 (Control) 的一系列其他自定义样式 (Styles) |
设置 (Settings) | 整个 GUI 的其他设置 |
双击选词 (Double Click Selects Word) | 启用后,通过双击可以选中一个词 |
三击选行 (Triple Click Selects Line) | 启用后,通过三击某个词可以选中此行 |
光标颜色 (Cursor Color) | 键盘光标的颜色 |
光标闪烁速度 (Cursor Flash Speed) | 编辑任何文本控制 (Text Control) 时文本光标闪烁的速度 |
选择区域颜色 (Selection Color) | 选择的文本 (Text) 区域的颜色 |
详细信息
为游戏创建整个 GUI 时,您可能需要为各种不同类型的控件 (Control) 做大量自定义。在许多不同的游戏类型中(如即时战略游戏或角色扮演游戏),几乎每种控件 (Control) 类型都需要自定义。
由于每个独立的控件 (Control) 都使用特殊的样式 (Style),因此不必创建十几个不同的样式并手动指定。GUI 皮肤 (GUI Skins) 将为您解决这个问题。通过创建 GUI 皮肤 (GUI Skin),您可以获得一组预先定义的针对每个独立控件 (Control) 的样式 (Styles)。之后,应用带有一行代码的皮肤 (Skin),这样您就不必手动为每个独立的控件 (Control) 指定样式 (Style) 了。
创建 GUISkin
GUISkin 是资源文件。如需创建 GUI 皮肤 (GUI Skin),请从菜单栏选择资源 (Assets) -> 创建 (Create) -> GUI 皮肤 (GUI Skin) 。您的工程视图 (Project View中会出现新的 GUISkin。
项目视图 (Project View) 中的新 GUISkin 文件
编辑 GUISkin
创建 GUISkin 后,您可以编辑检视器 (Inspector) 中包含的所有样式 。例如,文本框 (Text Field) 样式将会应用于所有文本框控件 (Text Field Controls)。
在 GUISkin 中编辑文本框样式 (Text Field Style)
无论脚本中创建了多少个文本框 (Text Field),它们都将使用此样式。当然,如果您愿意,您可以更改某个文本框 (Text Field) 的样式。接下来我们将讨论如何进行以上操作。that is done next.
应用 GUISkin
要将 GUISkin 应用到 GUI,您必须用简单的脚本来读取皮肤 (Skin) 并将其应用于控件 (Control)。
// 创建一个我们可以于其中分配 GUISkin 的变量 var customSkin : GUISkin; // 在 OnGUI() 函数中应用皮肤 (Skin) function OnGUI () { GUI.skin = customSkin; // 现在创建您喜欢的任何控件 (Control),然后其会以自定义皮肤 (Skin) 的样子显示 GUILayout.Button ("I am a re-Skinned Button"); // 您可以改变或移除某些控件 (Control) 的皮肤,但无法改变或移除其他控件 (Control) 的皮肤 GUI.skin = null; // 在此创建的所有控件 (Control) 都将使用默认皮肤 (Skin),而不使用自定义皮肤 (Skin) GUILayout.Button ("This Button uses the default UnityGUI Skin"); }
某些情况下,您需要两个拥有不同样式 (Style) 的同一控件 (Control)。这时,没必要创建一个新皮肤 (Skin) 并进行重新指定。相反,您可以使用皮肤中的某个自定义 (Custom) 样式 (Style)。为自定义样式 (Style) 取一个名字 (Name) ,这样您便能够将这个名字作为该独立控件 (Control) 的最后一个参数加以使用。
// 此皮肤 (Skin) 中的自定义样式 (Style) 之一的名称是“MyCustomControl var customSkin : GUISkin; function OnGUI () { GUI.skin = customSkin; // 我们提供 想使用的样式 (Style) 的名称,作为控件 (Control) 函数的最后一个参数。 GUILayout.Button ("I am a custom styled Button", "MyCustomControl"); // 我们也可以忽略自定义样式 (Custom Style),并使用皮肤 (Skin) 的默认按钮样式 (Button Style) GUILayout.Button ("I am the Skin's Button Style"); }
有关使用 GUIStyle 的更多信息,请参阅 GUIStyle 页面。有关使用 UnityGUI 的更多信息,请参阅 GUI Scripting Guide 。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论