unity3d drawtexture的canvas的texture在哪

7049人阅读
Unity3DShader(12)
1、创建一个Shader和一个材质
2、给一个GameObject添加一个Mesh Filter组件和一个Mesh Renderer组件
3、给Mesh Filter拖拽一个简单的网格(我用的是unity自带的标准资源Standard Assets/Water (Basic)/Objects目录下的waterPlaneMesh)
4、将写好的Shader 赋给创建的材质上,并选中纹理图为标准资源里的Water fallback图片
二、具体的Shader代码
Shader &Custom/WaterWave& {
Properties {
_WaterTex (&水的纹理图:&, 2D) = &white& {}
_XSpeed(&X轴方向的纹理滚动速度:&,Range(0,10)) = 1
_YSpeed(&Y轴方向的纹理滚动速度:&,Range(0,10)) = 1
SubShader {
Tags { &RenderType&=&Opaque& }
#pragma surface surf Lambert
sampler2D _WaterT
struct Input {
float2 uv_WaterT//注意uv后面的名必须跟你要获取uv值得纹理贴图名字要一样,否则没效果
void surf (Input IN, inout SurfaceOutput o) {
fixed2 UV = IN.uv_WaterT
fixed xValue = _XSpeed * _T//改变u坐标值 _Time为内置变量
fixed yValue = _YSpeed * _T//改变V坐标值
UV += fixed2(xValue,yValue);
half4 c = tex2D(_WaterTex,UV);
o.Albedo = c.
o.Alpha = c.a;
FallBack &Diffuse&
三、注意事项
四、最终效果
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:144757次
积分:1681
积分:1681
排名:第17766名
原创:20篇
转载:84篇
评论:10条
(2)(2)(3)(3)(6)(1)(1)(2)(5)(7)(2)(3)(1)(5)(3)(2)(1)(3)(6)(5)(2)(2)(1)(2)(12)(5)(2)(15)(3)Unity 5.x 完全自学手册_百度百科
Unity 5.x 完全自学手册
《Unity 5.x 完全自学手册》[1]
一书作者商宇浩、李一帆、张吉祥,由电子工业出版社2016年9月出版。
Unity 5.x 完全自学手册内容提要
《Unity 5.x 完全自学手册》是初学者快速自学 Unity 5.0 软件及以上版本的实用全面教程。《Unity 5.x 完全自学手册》共分21 章,从 Unity 5.x 软件的安装和使用方法开始讲起,以循序渐进的方式详细讲解 Unity 视图与基础操作、资源导入流程、场景创建、GUI 图形与用户界面基础、粒子系统、Mecanim 动画系统、物理引擎、光照烘焙技术、遮挡剔除技术、地形系统、脚本语言开发基础、Shader 开发、脚本调试优化与内存管理、跨平台发布、重力感应技术、AR(增强现实)技术、Leap Motion 技术等内容,并深入剖析了塔防类游戏、跑酷类游戏,以及射击类游戏的开发与制作,内容基本涵盖了 Unity 5.x 全部的工具和命令。《Unity 5.x 完全自学手册》中每章精心安排了具有针对性的实例,不仅可以帮助读者轻松掌握软件的使用方法,更能应对各种实际工作需要。
为了便于读者学习,《Unity 5.x 完全自学手册》还附赠教学视频,能够帮助读者快速掌握游戏开发技术。
《Unity 5.x 完全自学手册》适用于广大 Unity 初学者,以及有志于从事 Unity 3D 工作的人员使用,同时也适合高等院校相关专业的学生和各类培训班的学员参考阅读。[1]
Unity 5.x 完全自学手册目录
第1章 Unity 5.x简介 1
1.1 Unity 5.x概述 1
1.1.1 Unity 功能概述 1
1.1.2 Unity 5.x重点新增功能 6
1.2 Unity在游戏领域的应用 8
1.3 Unity软件安装 10
1.4 购买Unity许可证 12
1.5 本章小结 16
第2章 Unity视图与基础操作 17
2.1 Unity的界面布局 17
2.2 菜单栏 19
2.2.1 File(文件菜单) 19
2.2.2 Edit(编辑菜单) 22
2.2.3 Assets(资源菜单) 32
2.2.4 GameObject(游戏物体菜单) 36
2.2.5 Component(组件菜单) 47
2.2.6 Window(窗口菜单) 54
2.2.7 Help(帮助菜单) 55
2.3 Project(项目)视图 56
2.3.1 视图布局 56
2.3.2 操作介绍 56
2.4 Hierarchy(层次)视图 57
2.4.1 视图布局 57
2.4.2 操作介绍 58
2.5 Scene(场景)视图 58
2.5.1 视图布局 59
2.5.2 操作介绍 59
2.6 Game(游戏)视图 62
2.6.1 视图布局 62
2.6.2 操作介绍 62
2.7 Inspector(检视)视图 63
2.7.1 视图布局 63
2.7.2 操作介绍 64
2.8 本章小结 64
第3章 资源导入流程 65
3.1 媒体导入 65
3.1.1 3D模型、材质与动画导入 65
3.1.2 模型、材质与动画的导入 65
3.1.3 图片资源导入 70
3.1.4 音频、视频媒体资源导入 75
3.2 创建Prefab(预置体) 77
3.2.1 创建Prefab(预置体)操作介绍 77
3.2.2 Prefab(预置体)的应用 79
3.3 Unity Asset Store资源商店 82
3.3.1 Unity Asset Store资源商店介绍 83
3.3.2 Unity Asset Store资源商店使用方法 84
3.4 游戏资源导入实例——《宁静秋野》 84
3.5 本章小结 89
第4章 场景创建 90
4.1 创建工程和游戏场景 90
4.2 创建基本几何体 91
4.3 创建组件 92
4.4 创建脚本 93
4.5 创建光源 94
4.6 创建摄像机 95
4.7 创建角色 96
4.8 粒子系统 98
4.9 声音效果 102
4.10 创建UGUI 104
4.11 天空盒 107
4.12 雾效果 109
4.13 拓展训练——游戏地图的制作 109
4.14 本章小结 111
第5章 Unity图形与用户界面基础 112
5.1 Unity GUI简介 112
5.2 UI概要 112
5.2.1 Canvas(画布) 112
5.2.2 Render Mode(渲染模式) 113
5.2.3 Canvas Scaler组件 114
5.2.4 Graphic Raycaster组件 115
5.2.5 EventSystem(事件系统) 115
5.3 UGUI的基本布局 116
5.3.1 The Rect Tool(矩形工具) 116
5.3.2 Rect Transform(矩形变换组件) 117
5.3.3 Resizing Versus Scaling(调整与扩展) 117
5.3.4 Pivot(中心点) 118
5.3.5 Anchors(锚点) 118
5.4 UGUI核心控件 119
5.4.1 UGUI Panel组件 119
5.4.2 Text(文本) 120
5.4.3 Image(图像) 121
5.4.4 Raw Image 124
5.4.5 Button(按钮) 125
5.4.6 Slider(滑动条) 128
5.4.7 Scrollbar(滚动条) 129
5.4.8 Scroll Rect(滑动区域) 129
5.4.9 Toggle(切换)组件 130
5.4.10 Toggle Group(切换组) 131
5.4.11 Input Field(输入字段) 131
5.5 拓展训练——游戏主界面的创建 133
5.6 本章小结 141
第6章 新版粒子系统 142
6.1 粒子系统的创建 142
6.2 粒子系统的控制面板 143
6.3 粒子系统参数 144
6.3.1 Initial(初始化)模块 144
6.3.2 Emission(发射)模块 147
6.3.3 Shape(形状)模块 147
6.3.4 Velocity over Lifetime(生命周期速度)模块 150
6.3.5 Limit Velocity over Lifetime(生命周期速度限制)模块 150
6.3.6 Force over Lifetime(生命周期作用)模块 151
6.3.7 Color over Lifetime(生命周期颜色)模块 151
6.3.8 Color by Speed(颜色的速度控制)模块 151
6.3.9 Size over Lifetime(生命周期粒子大小)模块 151
6.3.10 Size by Speed(粒子大小的速度控制)模块 151
6.3.11 Rotation Over Lifetime(生命周期旋转)模块 151
6.3.12 Rotation by Speed(旋转的速度控制)模块 151
6.3.13 External Force(外部作用力)模块 152
6.3.14 Collision(碰撞)模块 152
6.3.15 Sub Emitters(子发射器)模块 153
6.3.16 TextureSheet Animation(序列帧动画纹理)模块 153
6.3.17 Renderer(粒子渲染器)模块 153
6.3.18 粒子编辑器 156
6.4 拓展训练——粒子系统实例 159
6.5 本章小结 165
第7章 Mecanim动画系统 166
7.1 Mecanim动画系统简介 166
7.1.1 Mecanim动画系统术语 166
7.1.2 角色导入及Animators工作原理 167
7.2 使用人形角色动画 170
7.2.1 创建Avatar 170
7.2.2 配置Avatar 171
7.2.3 BodyMask(身体遮罩) 172
7.2.4 人形动画的重定向功能 172
7.2.5 非人形动画 174
7.3 在游戏中使用角色动画 174
7.3.1 Mecanim系统逆向运动学功能 174
7.3.2 Animator组件 175
7.3.3 Animator Controller 175
7.3.4 Animator动画状态机 176
7.3.5 Blend Trees(混合树) 178
7.3.6 1D混合 179
7.3.7 2D混合 180
7.4 拓展训练——游戏动画案例 180
7.5 本章小结 185
第8章 物理引擎 186
8.1 刚体 186
8.1.1 刚体基本使用方法 186
8.1.2 刚体选项设置 187
8.2 碰撞体 188
8.2.1 使用碰撞体 188
8.2.2 碰撞体选项设置 189
8.3 角色控制器 192
8.3.1 添加角色控制器 192
8.3.2 角色控制器选项设置 192
8.4 关节 193
8.4.1 铰链关节 193
8.4.2 固定关节 194
8.4.3 弹簧关节 195
8.4.4 角色关节 196
8.4.5 可配置关节 197
8.5 布料World Acceleration Scale 200
8.5.1 添加布料系统 200
8.5.2 布料系统属性设置 201
8.6 力场 202
8.6.1 添加力场组件 202
8.6.2 力场组件属性设置 203
8.7 拓展训练——《彩豆迷宫》 203
8.8 本章小结 206
第9章 光照烘焙技术 207
9.1 Unity 5.x光照烘焙参数 207
9.1.1 Object面板参数 207
9.1.2 Scene面板参数 208
9.2 实时全局光照 209
9.3 实时光照贴图预览 210
9.4 “高动态光照”反射探头技术 211
9.5 Light Probes概述 213
9.6 本章小结 216
第10章 遮挡剔除技术 217
10.1 使用遮挡剔除 217
10.2 烘焙参数设置 220
10.3 使用Occlusion Area组件 221
10.4 使用Occlusion Portals组件 222
10.5 拓展训练——遮挡剔除技术应用实例 222
10.6 本章小结 227
第11章 地形系统 228
11.1 地形系统工作流程 228
11.1.1 创建地形 228
11.1.2 地形参数调整 229
11.2 地形编辑工具 230
11.2.1 地形高度绘制 230
11.2.2 地形纹理绘制 231
11.2.3 种植树木 233
11.2.4 地形细节绘制 235
11.2.5 地形设置 238
11.3 拓展训练——地形系统实例 239
11.5 本章小结 246
第12章 Unity脚本语言开发基础 247
12.1 脚本更新 247
12.2 C#脚本语法 247
12.2.1 变量 247
12.2.2 数组 248
12.2.3 算术、关系、逻辑运算符 249
12.2.4 语句 249
12.2.5 函数 252
12.2.6 C#脚本 253
12.3 创建脚本 253
12.3.1 MonoDevelop编辑器 254
12.3.2 脚本必然事件 255
12.3.3 MonoBehaviour类 256
12.3.4 访问组件 257
12.3.5 访问游戏对象 258
12.4 常用脚本API 258
12.4.1 Transform组件 258
12.4.2 Time类 259
12.4.3 Random类 260
12.4.4 Mathf类 260
12.4.5 Coroutine 协同程序 261
12.5 拓展训练——游戏实例 262
12.6 本章小结 267
第13章 Shader开发 268
13.1 Shader简介 268
13.2 创建Shader 272
13.2.1 Tags 273
13.2.2 LOD 274
13.2.3 Shader本体 275
13.3 ShaderLab基础语法 276
13.3.1 Shader范例讲解 276
13.3.2 Shader中的Properties属性 277
13.4 本章小结 280
第14章 脚本调试优化与内存管理 281
14.1 脚本调试 281
14.2 脚本优化 283
14.2.1 跨平台综合优化方案 283
14.2.2 物理性能和脚本性能优化 283
14.3 内存管理 284
14.3.1 Profiler 285
14.3.2 iOS设备启用运程分析 292
14.3.3 Android设备启用运程分析 292
14.4 本章小结 292
第15章 跨平台发布 293
15.1 网页平台发布 293
15.2 Android平台发布 298
15.2.1 Java SDK 的安装与环境配置 298
15.2.2 Android SDK的安装与项目发布 299
15.3 iOS平台发布 302
15.3.1 Xcode 下载及安装 303
15.3.2 iOS开发者账号申请 304
15.3.3 iOS平台项目发布 306
15.4 本章小结 309
第16章 塔防类游戏设计 310
16.1 塔防类游戏设计说明 310
16.2 游戏环境设定 310
16.3 游戏开始界面UGUI的制作 312
16.4 游戏开始界面脚本设计 315
16.5 游戏场景设计 318
16.6 主角动作脚本设计 319
16.7 子弹脚本设定 322
16.8 NPC怪物诞生脚本设计 325
16.9 NPC怪物动作脚本设计 326
16.10 角色血量脚本设计 331
16.11 角色得分及过关脚本设计 332
16.12 游戏界面制作 333
16.13 游戏结束及暂停界面制作 336
16.14 游戏发布测试 341
第17章 跑酷类游戏设计 343
17.1 游戏架构 343
17.2 游戏环境设定 344
17.3 游戏开始界面制作 345
17.4 商店场景设计 348
17.5 游戏场景设计 350
17.6 游戏发布测试 356
第18章 射击类游戏设计 358
18.1 角色与场景准备 358
18.2 角色的运动控制 361
18.3 摄像机脚本编写 365
18.4 敌人角色创建及脚本编写 366
18.5 制作角色血条 370
18.6 本章小结 372
第19章 重力感应技术 373
19.1 重力感应技术介绍 373
19.2 重力感应开发案例讲解及源代码介绍 374
19.3 本章小结 378
第20章 Unity AR(增强现实)技术 379
20.1 AR(增强现实)技术介绍 379
20.1.1 技术原理 379
20.1.2 主要元素与特点 379
20.1.3 应用领域 380
20.2 高通AR与Unity联合开发案例 382
20.2.1 下载高通AR套件 382
20.2.2 License Manager设置 384
20.2.3 Target Manager设置 385
20.2.4 Unity中AR的基本设置 388
20.3 本章小结 392
第21章 Leap Motion技术 393
21.1 Leap Motion技术介绍 393
21.1.1 技术原理 393
21.1.2 技术特点 393
21.1.3 应用领域 394
21.2 Leap Motion的安装 394
21.2.1 Leap Motion的驱动安装 394
21.2.2 Leap Motion的SDK安装 395
21.3 Leap Motion的功能与技术构架 396
21.3.1 Leap Motion的Driver功能 396
21.3.2 Leap Motion对Unity的支持信息 397
21.3.3 Leap Motion的手势识别种类 398
21.3.4 Leap For Unity API架构 401
21.3.5 Leap Motion的资料取得过程 402
21.4 Leap Motion开发实例 403
21.4.1 初始Leap For Unity范例 403
21.4.2 判断Leap Motion手势范例 407
21.5 本章小结 410[1]
Unity 5.x 完全自学手册作者简介
本书的作者和编审会成员均是多年从事多媒体应用教学和科研的专家或学者,有着丰富的教学经验和实践经验,这些作品都是他们的科研成果和教学经验的结晶。本成果受《3D技术在多媒体课件中的应用》科研项目(项目编号)资助出版。本书由北京印刷学院严晨教授主审,商宇浩、李一帆、张吉祥主编,刘怡、潘伟东等参编。其中商宇浩编写第6、11、15、20、21章的内容,李一帆编写第1、2、3、8、19章的内容,刘怡编写第7、13、18章的内容,张吉祥编写第4、5、9、12、16章的内容,潘伟东编写第10、14、17章的内容。
由于作者水平有限,书中疏漏和不足之处在所难免,恳请广大读者及专家不吝赐教。[1]
.豆瓣读书[引用日期]
企业信用信息我想请教关于NGUI的Canvas问题_unity3d吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:55,847贴子:
我想请教关于NGUI的Canvas问题收藏
我在canvas设置面板中选了screen space - camera,让canvas显示在特定的camera上,如果我想在游戏过程中让canvas切换显示到另外一个camera上,那C#的代码要怎么写?我发现代码里只能设置canvas的Render mode,没发现可以设置Render camera的属性,请问代码要怎么写?
unity是iOS排行榜上超过50款知名APP的广告变现首选,中国领先的iOS移动广告平台unity收益高,用户体验好,不扣量,擅长在提供出色用户体验的同时带来更高的广告收入
登录百度帐号推荐应用
为兴趣而生,贴吧更懂你。或[Unity3D]UGUI 新手引导遮罩控件 - 推酷
[Unity3D]UGUI 新手引导遮罩控件
强制性引导UI控件,关键区域镂空,自动调整关键区域大小。
效果如图:
使用结构:
UnityEngine.UI;
System.Collections.G
UnityEngine.S
UnityEngine.UI
public & class
GuideHighlightMask&:&MaskableGraphic,&UnityEngine.ICanvasRaycastFilter
RectTransform&
public &Vector2&center& =
public &Vector2&size& = & new &Vector2( 100 ,& 100
public & void
DoUpdate()
&&&&&&&&&&&&
// &当引导箭头位置或者大小改变后更新,注意:未处理拉伸模式
&&&&&&&&&&&& if &(arrow& && &center& != &arrow.anchoredPosition& || &size& !=
arrow.sizeDelta)
&&&&&&&&&&&&
&&&&&&&&&&&&&&&&
this .center& =
arrow.anchoredP
&&&&&&&&&&&&&&&&
this .size& =
arrow.sizeD
SetAllDirty();
&&&&&&&&&&&&}
public & bool
IsRaycastLocationValid(Vector2&sp,&Camera&eventCamera)
&&&&&&&&&&&&
// &点击在箭头框内部则无效,否则生效
&&&&&&&&&&&& return & !
RectTransformUtility.RectangleContainsScreenPoint(arrow,&sp,&eventCamera);
protected & override & void &OnFillVBO(List & UIVertex &
&&&&&&&&&&&&Vector4&outer&
= & new &Vector4( - rectTransform.pivot.x& *
rectTransform.rect.width,&
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
- rectTransform.pivot.y& *
rectTransform.rect.height,
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(
1 & - &rectTransform.pivot.x)& *
rectTransform.rect.width,
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&(
1 & - &rectTransform.pivot.y)& *
rectTransform.rect.height);
&&&&&&&&&&&&Vector4&inner&
= & new &Vector4(center.x& - &size.x& / & 2
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&center.y&
- &size.y& / & 2
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&center.x&
+ &size.x& * & 0.5f
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&center.y&
+ &size.y& * & 0.5f
vbo.Clear();
&&&&&&&&&&&&var&vert&
UIVertex.simpleV
&&&&&&&&&&&&
&&&&&&&&&&&&vert.position& = & new
Vector2(outer.x,&outer.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(outer.x,&outer.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.x,&outer.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.x,&outer.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&
&&&&&&&&&&&&vert.position& = & new
Vector2(inner.x,&inner.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.x,&outer.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.z,&outer.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.z,&inner.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&
&&&&&&&&&&&&vert.position& = & new
Vector2(inner.z,&outer.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.z,&outer.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(outer.z,&outer.w);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(outer.z,&outer.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&
// &bottom
&&&&&&&&&&&&vert.position& = & new
Vector2(inner.x,&outer.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.x,&inner.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.z,&inner.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
&&&&&&&&&&&&vert.position&
Vector2(inner.z,&outer.y);
&&&&&&&&&&&&vert.color&
vbo.Add(vert);
private & void
DoUpdate();
已发表评论数()
请填写推刊名
描述不能大于100个字符!
权限设置: 公开
仅自己可见
正文不准确
标题不准确
排版有问题
主题不准确
没有分页内容
图片无法显示
视频无法显示
与原文不一致

我要回帖

更多关于 unity3d gui texture 的文章

 

随机推荐