- 博客(141)
- 收藏
- 关注
原创 3D RPG问题汇总
问题一:整个项目提升到 URP,找不到 edit-rendering pipeline-...最接近的如下图,还是灰色的不可选(这里可选是因为已经渲染出来了)章节1. 2.Create Project 创建项目导入素材。
2026-03-22 14:44:18
34
原创 Ruby‘s Adventure问题汇总
问题二:在 Unity的 package manager 的 my assets中,找不到下载的资源。解决:退出 Unity,重新打开Unity,打开项目,进入 package manager 就有了。问题一:添加至我的资源弹窗显示成功,但是进入我的资源没有。1.设置 Unity 编辑器。
2026-03-22 14:24:22
25
原创 《Maya2024超级学习手册》3.4.10 实例:制作瓶子模型
选择工作套住前视图的边,能自动套住剩下的边。有时候点了连接 viewcube 会不见。
2026-01-28 22:54:09
63
原创 《Maya 2024 超级学习手册》3.4.9 实例:制作锤子模型
在本实例中,笔者将详细讲解如何使用中文版Maya 2024为我们提供的建模工具将一个多边形长方体变成一把锤子的模型,锤子模型的最终渲染效果如图3-148所示,线框渲染效果如图3-149所示。(15)对所选择的面使用“挤出”工具进行多次挤出操作,并配合“缩放工具”,制作出锤子的手柄结构,如图3-171所示。(13)在“顶视图”中,选择图3-167所示的顶点,使用“移动工具”对其微调,制作出图3-168所示的模型。(8)选择图3-159所示的边,使用“连接”工具为模型增加边,如图3-160所示。
2026-01-22 21:41:28
401
原创 《Maya 2024 超级学习手册》3.4.8 实例:制作垃圾桶模型
在本实例中,我们通过制作一个垃圾桶模型来学习多边形建模技术,本实例的最终渲染效果如图3-125所示,线框渲染效果如图3-126所示。(9)将鼠标指针放置在名称为Set的集上,单击鼠标右键并执行“选择集成员”命令,即可快速选择图3-136所示的边。(11)选择图3-138所示的面,单击“多边形建模”工具架上的“挤出”图标,制作出图3-140所示的模型。(14)选择模型上的所有面,再次使用“挤出”工具制作出垃圾桶的厚度,如图3-144所示。(12)将所选择的面删除后,得到图3-141所示的模型。
2025-12-09 00:42:26
451
1
原创 《Maya 2024 超级学习手册》3.4.7 实例:制作哑铃模型
在本实例中,我们通过制作一个哑铃的模型来详细讲解常用建模工具的使用方法及技巧,本实例的渲染效果如图3-104所示,线框渲染效果如图3-105所示。(6)按住Command键,按住鼠标右键,在弹出的命令菜单中执行“环形边工具/到环形边”命令,这样可以快速选择图3-114所示的边。(4)单击“多边形建模”工具架上的“倒角组件”图标,制作出图3-110所示的模型。(13)单击“多边形建模”工具架上的“镜像”图标,得到图3-123所示的模型。(7)对所选择的边进行连接操作,为其添加边,如图3-115所示。
2025-12-08 22:18:56
308
原创 《Maya 2024 超级学习手册》3.4.6 实例:制作小筐模型
(21)在“属性编辑器”面板中,设置扫描的图形为“矩形”,“宽度”为0.2,“高度”为0.6,“角半径”为0.02,“角分段”为3,勾选“封口”选项。(14)再次在场景中创建一个长方体模型,在“多边形立方体历史”卷展栏中,设置“宽度”为10,“高度”为5,“深度”为11,“深度细分数”为3。(5)选择模型上的所有边,单击“多边形建模”工具架上的“倒角组件”图标,制作出模型的倒角效果,如图3-79所示。(6)选择图3-80所示的边,使用“建模工具包”面板中的“连接”工具制作出图3-81所示的模型。
2025-12-08 18:47:47
449
原创 《Maya 2024 超级学习手册》3.4.5 实例:制作沙发模型
(15)设置完成后,按住鼠标右键,在弹出的命令菜单中执行“对象模式”命令,退出模型的编辑状态,如图3-66所示,再按3键,对模型进行平滑操作,得到图3-67所示的模型。9)单击“多边形建模”工具架上的“镜像”图标,如图3-56所示,制作出沙发腿的另一侧结构,如图3-57所示。(10)单击“多边形建模”工具架上的“倒角组件”图标,制作出模型的倒角效果,如图3-59所示。(13)单击“多边形建模”工具架上的“倒角组件”图标,如图3-63所示,制作出模型的倒角效果。(18)本实例的最终模型效果如图3-70所示。
2025-12-07 23:23:39
502
原创 《Maya 2024 超级学习手册》3.2.7 实例:制作石膏模型
(2)在“通道盒/层编辑器”面板中,设置长方体模型的“平移X”为0,“平移Y”为0,“平移Z”为0,“高度基线”为-1,“宽度”为5,“高度”为13,“深度”为5,确定长方体的大小和位置。(7)在“通道盒/层编辑器”面板中,设置圆柱体模型的“平移X”为0,“平移Y”为0,“平移Z”为-12,“高度基线”为-1,“半径”为3,“高度”为15,确定圆柱体的大小和位置。(11)设置完成后,单击“镜像”按钮,关闭“镜像选项”对话框,并旋转镜像轴,如图3-32所示,对圆柱体模型进行切割。
2025-12-07 22:18:27
369
原创 《Maya 2024 超级学习手册》2.3.7 实例:制作玩具蚂蚁模型
(3)在“通道盒/层编辑器”面板中,设置球体模型的“平移X”“平移Y”和“平移Z”均为0,设置“旋转X”为90。(13) 使用相同的方法,使用“EP曲线工具”绘制出蚂蚁模型的其他腿的线条和头部触角的线条,如图2-96所示。(8)先选择前两个球体模型,单击“曲面”工具架上的“附加曲面”图标,得到图2-91所示的模型。(19)选择蚂蚁腿和触角模型,单击“多边形建模”工具架上的“结合”图标,将其合并为一个模型。自己拖很难8个点重合。(17)在“插值”卷展栏中,设置“模式”为“EP到EP”,“步数”为8。
2025-12-07 21:23:21
486
原创 《Unity Shader》12.6 运动模糊
当然,我们可以在MotionBlur.cs的脚本面板中将motionBlurShader参数的默认值设置为Chapter12-MotionBlur,这样就不需要以后使用时每次都手动拖曳了。(6)然后,我们定义了运动模糊所需的Pass。之所以要把A通道和RGB通道分开,是因为在更新RGB时我们需要设置它的A通道来混合图像,但又不希望A通道的值写入渲染纹理中。在本书资源的实现中,我们构建了一个包含3面墙的房间,并放置了4个立方体,它们均使用了我们在9.5节中创建的标准材质。下面,我们来实现Shader的部分。
2025-12-05 18:59:58
772
原创 《Unity Shader》12.5 Bloom 效果
当然,我们可以在Bloom.cs的脚本面板中将bloomShader参数的默认值设置为Chapter12-Bloom,这样就不需要以后使用时每次都手动拖曳了。(2)把本书资源中的Textures/Chapter12/Sakura1.jpg拖曳到场景中,并调整它的位置使其可以填充整个场景。(3)由于Bloom效果是建立在高斯模糊的基础上的,因此脚本中提供的参数和12.4节中的几乎完全一样,我们只增加了一个新的参数luminanceThreshold来控制提取较亮区域时使用的阈值大小。(3)新建一个脚本。
2025-12-05 01:15:42
561
原创 《Unity Shader》12.4.2 实现
完成后返回编辑器,并把Chapter12-GaussianBlur拖曳到摄像机的GaussianBlur.cs脚本中的gaussianBlurShader参数中。当然,我们可以在GaussianBlur.cs的脚本面板中将gaussianBlurShader参数的默认值设置为Chapter12-GaussianBlur,这样就不需要以后使用时每次都手动拖曳了。(2)把本书资源中的Assets/Textures/Chapter12/Sakura1.jpg拖曳到场景中,并调整的位置使其可以填充整个场景。
2025-12-05 00:05:36
661
原创 《Unity Shader》12.3.3 实现
完成后返回编辑器,并把Chapter12-EdgeDetection拖曳到摄像机的EdgeDetection.cs脚本中的edgeDetectShader参数中。当然,我们可以在EdgeDetection.cs的脚本面板中将edgeDetectShader参数的默认值设置为Chapter12-EdgeDetection,这样就不需要以后使用时每次都手动拖曳了。(2)把本书资源中的Assets/Textures/Chapter12/Sakura0.jpg拖曳到场景中,并调整它的位置使其可以填充整个场景。
2025-12-04 01:07:59
971
原创 《Unity Shader》12.2调整屏幕的亮度、饱和度和对比度
完成后返回编辑器,并把Chapter12-BrightnessSaturationAndContrast拖曳到摄像机的Brightness SaturationAndContrast.cs脚本中的briSatConShader参数中。(2)把本书资源中的Assets/Textures/Chapter12/Sakura0.jpg拖曳到场景中,并调整其的位置使它可以填充整个场景。在本节中,我们就小试牛刀来实现一个非常简单的屏幕特效——调整屏幕的亮度、饱和度和对比度。(1)首先,继承12.1节中创建的基类。
2025-12-04 00:25:49
768
原创 《Maya 2024 超级学习手册》2.3.6 实例:制作台灯模型
(5)选择曲线上的所有顶点,按住Shift键,同时按住鼠标右键,在弹出的命令菜单中执行“Bezier角点”命令,将所选择的顶点类型更改为“Bezier角点”8)现在我们在“透视视图”中观察到新生成的台灯底座模型显示为黑色,可以通过执行菜单栏“曲面/反转方向”命令,更改曲面模型的法线方向,得到图所示的模型。(7)选择调整完成后的曲线,单击“曲面”工具架上的“旋转”图标,可得到台灯的底座模型。(4)选择绘制好的曲线,按住鼠标右键,在弹出的命令菜单中执行“控制顶点”命令。(12)在场景中绘制出一个圆柱体模型。
2025-12-03 01:20:46
233
原创 《JavaEE企业级应用开发教程(Spring+Spring MVC+Mybatis)》3.2 动态代理
(1)在src目录下,创建一个com.itheima.cglib包,在包中创建一个目标类UserDao, UserDao不需要实现任何接口,只需定义一个添加用户的方法和一个删除用户的方法,如文件3-6所示。(3)在com.itheima.cglib包中,创建测试类CglibTest。(4)在src目录下,创建一个com.itheima.aspect包,并在该包下创建切面类MyAspect,在该类中定义一个模拟权限检查的方法和一个模拟记录日志的方法,这两个方法就表示切面中的通知。
2025-12-02 20:06:55
991
原创 《Maya 2024 超级学习手册》2.2.8 实例:制作帽子模型
(8)将操作视图切换至“前视图”,单击“曲线”工具架上的“NURBS圆形”图标,在场景中绘制一个圆形,并调整方向和位置,如图2-42所示。(7)在场景中,按照创建圆形图形的顺序,依次选择这些图形,单击“曲面”工具架上的“放样”图标,得到帽子模型。(4)选择绘制完成的圆形,按住Shift键,配合“移动工具”,向上拖曳复制出一个圆形。(3)在“通道盒/层编辑器”面板中,设置圆形的“平移X”“平移Y”和“平移Z”均为0。(11)打开“挤出选项”对话框,设置“样式”为“管”,设置“方向”为“路径方向”
2025-12-02 00:45:35
240
原创 《Maya 2024 超级学习手册》2.2.7 实例:制作高脚杯模型
(1)启动中文版Maya 2024软件,按住空格键,在Maya按钮上按住鼠标右键,在弹出的命令菜单中执行“前视图”命令,即可将当前视图切换至“前视图”,如图2-21所示。(10)在默认状态下,当前的曲面模型显示为黑色,可以执行菜单栏“曲面/反转方向”命令来更改曲面模型的面方向,这样就可以得到正确的曲面模型显示效果,如图2-30所示。(2)单击“曲线”工具架上的“EP曲线工具”图标,在“前视图”中绘制出酒杯的一半剖面曲线,如图2-23所示。(8)选择场景中绘制完成的曲线,单击“曲面”工具架上的“旋转”图标。
2025-12-01 23:09:34
252
原创 《Unity Shader》11.3.1 续 流动的水流的阴影
本书资源的Scene_11_3_3场景中,我们给出了计算顶点动画的阴影的一个例子。创建 VertexAnimationWithShadow.mat,把 Chapter11-VertexAnimationWithShadow赋给 mat,main tex 用和 WaterMat.mat 一样的。把 Chapter11-Water.shader 的主代码复制到 Chapter11-VertexAnimationWithShadow.shader 中,再添加 ShadowCaster 的 Pass。
2025-12-01 18:04:42
380
原创 《Unity Shader》11.3.2 广告牌技术
接着,我们得到了粗略的向上方向。为了防止法线方向和向上方向平行(如果平行,那么叉积得到的结果将是错误的),我们对法线方向的y分量进行判断,以得到合适的向上方向。(1)新建一个场景。保存后返回场景,把本书资源中的Assets/Textures/Chapter11/star.png拖曳到材质的Main Tex中,即可得到类似图11.6中的效果。(4)顶点着色器是我们的核心,所有的计算都是在模型空间下进行的。(4)在场景中创建多个四边形(Quad),调整它们的位置和大小,然后把第2步中的材质拖曳给它们。
2025-12-01 15:37:46
636
原创 《Unity Shader》11.3.1 流动的河流
在Unity 5.2中,默认情况下场景将包含一个摄像机和一个平行光,并且使用了内置的天空盒子。由于本节模拟的是2D效果,因此我们需要把摄像机的投影类型设置为正交投影。为了让河流更加美观,我们可以复制多个材质并使用不同的参数,再赋给不同的Water模型,就可以得到类似图11.4中的效果。把新的Shader赋给第2步中创建的材质。(4)在场景中创建多个Water模型,调整它们的位置、大小和方向,然后把第2步中的材质拖曳给它们。打开新建的Chapter11-Water,删除原来的代码,并添加如下关键代码。
2025-12-01 13:23:52
495
原创 《Unity Shader》11.2.2 滚动的背景
保存后返回场景,把本书资源中的Assets/Textures/Chapter11/Far_Background.png和Assets/Textures/Chapter11/Near_Background.png分别赋给材质的Base Layer和2nd Layer属性,并调整它们的滚动速度(由于我们想要在视觉上模拟Base Layer比2nd Layer更远的效果,因此Base Layer的滚动速度要比2nd Layer的速度慢一些)。(1)新建一个场景,在本书资源中,该场景名为Scene_11_2_2。
2025-12-01 13:23:05
504
原创 《Unity Shader》11.2.1 序列帧动画
保存后返回场景,我们将Assets/Textures/Chapter11/Boom.png(注意,由于是透明纹理,因此需要勾选该纹理的Alpha Is Transparency属性)赋给ImageSequenceAnimationMat中的Image Sequence属性,并将Horizontal Amount和Vertical Amount设置为8(因为Boom.png包含了8行8列的关键帧图像),完成后单击播放,并调整Speed属性,就可以得到一段连续的爆炸动画。(2)新建一个材质。
2025-11-30 17:26:03
624
原创 《Unity Shader》10.3.1 在Unity中实现简单的程序纹理
为了在面板上修改属性时仍可以执行set函数,我们使用了一个开源插件SetProperty(https://github.com/LMNRY/SetProperty/blob/master/Scripts/SetPropertyExample.cs)。(5)我们并没有为ProceduralTextureMat材质赋予任何纹理,这是因为,我们想要用脚本来创建程序纹理。(3)我们使用第7章的一个Unity Shader——Chapter7-SingleTexture,把它赋给第2步中创建的材质。
2025-11-30 16:39:28
473
原创 《Unity Shader》10.2.2 玻璃效果
这种效果的实现非常简单,我们首先使用一张法线纹理来修改模型的法线信息,然后使用了10.1节介绍的反射方法,通过一个Cubemap来模拟玻璃的反射,而在模拟折射时,则使用了GrabPass获取玻璃后面的屏幕图像,并使用切线空间下的法线对屏幕纹理坐标偏移后,再对屏幕图像进行采样来模拟近似的折射效果。在本书资源中,该场景名为Scene_10_2_2。在本书资源的实现中,我们构建了一个由6面墙围成的封闭房间,并在房间中放置了一个立方体和一个球体,其中球体位于立方体内部,这是为了模拟玻璃对内部物体的折射效果。
2025-11-30 15:06:47
985
原创 《Unity shader》10.1.5 菲涅尔反射
我们替换掉Unity 5中场景默认的天空盒子,而把10.1.1节中创建的天空盒子材质拖曳到Window → Lighting → Skybox选项中(当然,我们也可以为摄像机添加Skybox组件来覆盖默认的天空盒子)。保存后返回场景,在材质面板中把Cubemap_0拖曳到Cubemap属性中,并调整其他参数,即可得到类似图10.10中的效果。(3)新建一个材质,在本书资源中,该材质名为FresnelMat,把材质赋给第2步中创建的Teapot模型。(2)向场景中拖曳一个Teapot模型,并调整它的位置。
2025-11-30 01:22:29
486
原创 《Unity Shader》10.1.4 折射
我们替换掉Unity 5中场景默认的天空盒子,而把10.1.1节中创建的天空盒子材质拖曳到Window → Lighting → Skybox选项中(当然,我们也可以为摄像机添加Skybox组件来覆盖默认的天空盒子)。保存后返回场景,在材质面板中把Cubemap_0拖曳到Reflection Cubemap属性中,并调整其他参数,即可得到类似图10.9中的效果。(3)新建一个材质,在本书资源中,该材质名为RefractionMat,把材质赋给第2步中创建的Teapot模型。折射效果的实现略微复杂一些。
2025-11-30 00:27:31
474
原创 《Unity Shader》10.1.3 反射
我们替换掉Unity 5中场景默认的天空盒子,而把10.1.1节中创建的天空盒子材质拖曳到Window → Lighting → Skybox选项中(当然,我们也可以为摄像机添加Skybox组件来覆盖默认的天空盒子)。保存后返回场景,在材质面板中把Cubemap_0拖曳到Reflection Cubemap属性中,并调整其他参数,即可得到类似图10.7中的效果。(3)新建一个材质,在本书资源中,该材质名为ReflectionMat,把材质赋给第2步中创建的Teapot模型。反射的实现非常简单。
2025-11-29 23:40:04
328
1
原创 《Unity Shader》10.1.2 创建用于环境映射的立方体纹理
Face size值越大,渲染出来的立方体纹理分辨率越大,效果可能更好,但需要占用的内存也越大,这可以由面板最下方显示的内存大小得到。(3)从Unity菜单栏选择GameObject -> Render into Cubemap,打开我们在脚本中实现的用于渲染立方体纹理的窗口,并把第1步中创建的GameObject和第2步中创建的Cubemap_0分别拖曳到窗口中的Render From Position和Cubemap选项,如图10.5所示。准备好了需要的立方体纹理后,我们就可以对物体使用环境映射技术。
2025-11-29 22:55:28
314
原创 《Unity Shader》10.2.1 镜子效果
(8)最后,为了得到从镜子出发观察到的场景图像,我们还需要创建一个摄像机,并调整它的位置、裁剪平面、视角等,使得它的显示图像是我们希望的镜子图像。三个点光源在一侧,在物体之前,main camera 之后(不一定),quad 在 camera 之前,物体之后,quad 的正面朝向自己。(4)在场景中创建6个立方体,并调整它们的位置和大小,使得它们构成围绕着摄像机的房间的6面墙。(5)创建3个球体和两个正方体,调整它们的位置和大小,并给它们赋予在9.5节中创建的标准材质。把第2步中创建的材质赋给它。
2025-11-27 23:02:47
610
原创 《Unity Shader》10.1.1 天空盒子
(3)使用本书资源中的Assets/Textures/Chapter10/Cubemaps文件夹下的6张纹理对第2步中的材质赋值,注意这6张纹理的正确位置(如posz纹理对应了Front [+Z] 属性)。为了让天空盒子正常渲染,我们需要把这6张纹理的Wrap Mode设置为Clamp,以防止在接缝处出现不匹配的现象。(2)在SkyboxMat的Unity Shader下拉菜单中选择Unity自带的Skybox/6 Sided,该材质需要6张纹理。到第十章了,创建的操作就不截图了。
2025-11-27 00:01:01
260
原创 《Unity Shader》7.4 遮罩纹理
在Unity 5.2中,默认情况下场景将包含一个摄像机和一个平行光,并且使用了内置的天空盒子。在Window -> Lighting -> Skybox中去掉场景中的天空盒子。(4)然后,我们使用CGPROGRAM和ENDCG来包围住CG代码片,以定义最重要的顶点着色器和片元着色器代码。我们使用#pragma指令来告诉Unity,我们定义的顶点着色器和片元着色器叫什么名字。把新的Unity Shader赋给第2步中创建的材质。(4)在场景中创建一个胶囊体,并把第2步中的材质赋给该胶囊体。
2025-11-26 13:07:30
435
原创 《Unity Shader》9.4.3 使用帧调试器查看阴影绘制过程
尽管Chapter9-Shadow中只定义了两个Pass,但正如我们之前所说,Unity会在它的Fallback中找到第三个Pass,即LightMode为ShadowCaster的Pass来更新摄像机的深度纹理。在最后一个部分中,如果物体所使用的Shader包含了对这张阴影图的采样就会得到阴影效果。在第二个部分,即渲染得到平行光的阴影映射纹理的过程中,Unity也是调用了这个Pass来得到光源的阴影映射纹理。第三个部分中,Unity会根据之前两步的结果得到屏幕空间的阴影图,如图9.22所示。
2025-11-26 12:56:27
328
原创 《JavaEE企业级应用开发教程(Spring+Spring MVC+Mybatis)》2.5.2 基于Annotation的装配
(7)在com.itheima.annotation包中,创建测试类AnnotationAssembleTest,在类中编写测试方法并定义配置文件的路径,然后通过Spring容器加载配置文件并获取UserController实例,最后调用实例中的save()方法,如文件2-20所示。(1)在chapter02项目的src目录下,创建一个com.itheima.annotation包,在该包中创建接口UserDao,并在接口中定义一个save()方法,如文件2-14所示。在 pom.xml 添加依赖。
2025-11-25 22:35:20
398
原创 《JavaEE企业级应用开发教程(Spring+Spring MVC+Mybatis)》2.5.1 基于XML的装配
(1)在项目chapter02的src目录下,创建一个com.itheima.assemble包,在该包中创建User类,并在类中定义username、password和list集合三个属性及其对应的setter方法,如文件2-11所示。(2)在com.itheima.assemble包中,创建配置文件beans5.xml,在配置文件中通过构造注入和设值注入的方式装配User类的实例,如文件2-12所示。创建一个com.itheima.assemble包,在该包中创建User类。
2025-11-25 20:14:46
210
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅