文章分类 -  CocosCreator3D从入门到入门

CocosCreator3D从入门到入门
摘要:设计分辨率 暂时设计为竖屏,分辨率为750 X 1334 搭建HomeUI UI(HomeUI) 脚本(HomeUI) 先做无限模式 1.实现无限模式按钮的回调函数 2.创建UI管理脚本,点击无限模式后关闭HomeUI,显示GameUI 3.创建一个观察者模式,视图之间不直接引用,通过事件传递的方式 阅读全文
posted @ 2024-12-20 17:12 EricShx 阅读(18) 评论(0) 推荐(0)
摘要:开发环境 CocosCreator3.7.4 创建项目 打开DashBoard,创建项目命名为3DRunGame 新建资源结构 prefabs abs(障碍物) roles(角色) tiles(地块) scenes(场景) scripts(脚本) 场景结构思维导图 阅读全文
posted @ 2024-12-20 16:15 EricShx 阅读(9) 评论(0) 推荐(0)
摘要:一般的跑酷关卡分两种: 当前有限距离的关卡,跑完通关 无限关卡,一直跑、跑、跑... 思路 如果关卡通过手动在场景中编辑的话,短小简单的关卡还好说,如果多个关卡,或者无限关卡这样的工作是不现实的。 所以,这里会通过“地块”的方式搭建“关卡” 先制作一些地块,然后根据需求把这些地块拼接在一起。有限/无 阅读全文
posted @ 2024-12-19 18:56 EricShx 阅读(44) 评论(0) 推荐(0)
摘要:在场景中创建一个Cube做为障碍物,重命名为abs,调整一下障碍物的大小和位置让它位于Player的左前方。 为了便于区分,这里改变一下障碍物的外观。 在资源管理器中新建一个材质mat-abs,改变一下材质的颜色并把它拖拽到abs的material引用中。 因为障碍物需要有碰撞,也会有受到力的反馈, 阅读全文
posted @ 2024-12-17 14:38 EricShx 阅读(53) 评论(0) 推荐(0)
摘要:实现相机跟随Player让整个游戏节奏更完整。 如果单纯的跟随角色,将MainCamera拖到Player节点下即可。但这里会有一个问题,子节点会随着父节点的变化(旋转/位移/缩放)而变化,如果是过山车可能比较适合,但在该场景中,只需要让相机跟随玩家位移,而不需要其他旋转。 脚本驱动 新建一个脚本叫 阅读全文
posted @ 2024-12-17 14:08 EricShx 阅读(73) 评论(0) 推荐(0)
摘要:实现角色的左右移动就是给其施加一个向左或向右的力。 输入事件通过Input来监听(Input监听的事件注意在析构函数中取消) import { _decorator, Component, EventKeyboard, Input, input, KeyCode, Node, RigidBody, 阅读全文
posted @ 2024-12-17 13:48 EricShx 阅读(15) 评论(0) 推荐(0)
摘要:作用力 游戏中的物理引擎是模拟真实世界的,想让一个静止的物体动起来,最简单的方法就是给它一个力。 在CocosCreator引擎中,可以给刚体施加一个力,用来模拟真实世界中的效果。 刚体的API中applyForce可以给刚体施加一个力。 代码编写 如场景显示,如果想要让Player往前移动,那么就 阅读全文
posted @ 2024-12-17 11:55 EricShx 阅读(29) 评论(0) 推荐(0)
摘要:在资源管理器创建一个TS脚本,命名为PlayerMovement import { _decorator, Component, Node } from 'cc'; import是引用的意思,当一个脚本组件想要使用不在自己文件内的代码时,就需要使用到import...from语句。 'cc'是Coc 阅读全文
posted @ 2024-12-17 11:40 EricShx 阅读(36) 评论(0) 推荐(0)
摘要:CocosCreator中的物理组件包含了3部分:刚体(RigidBody)、碰撞体(Collision)、物理材质(Physic Materials) 刚体(RigidBody) 回到场景,选中Player节点,把高度(y)设置为2,可以看到Player“悬空”了。 在Player的属性检查器中添 阅读全文
posted @ 2024-12-17 11:05 EricShx 阅读(94) 评论(0) 推荐(0)
摘要:摄像机 Creator场景中的摄像机和现实中的(如手机)摄像机一样,负责把世界中的景象拍下来呈现给观众。 摄像机在空间中位置和方向,决定了它能呈现(拍摄)的画面内容。 游戏摄像机Main Camera 在场景根节点下的摄像机Main Camera是游戏呈现的摄像机(注意不是场景摄像机),选中Main 阅读全文
posted @ 2024-12-17 10:07 EricShx 阅读(166) 评论(0) 推荐(0)
摘要:运行预览场景可以看到,画面有些偏暗,场景不好看。 一个物体最终呈现的效果受到几个方面的影响: 自身的材质参数 环境光照参数 光源参数 阴影参数 环境光照参数 为了更好的理解环境光照参数对物体的影响,这里先隐藏地板和角色,并在场景中创建一个用于测试的球体。 同时禁用主光源Main Light,先关闭光 阅读全文
posted @ 2024-12-16 18:19 EricShx 阅读(147) 评论(0) 推荐(0)
摘要:创建角色 在场景中创建一个立方体,y值设为1,重命名为Player. 这里会看到Player和地板一个颜色,不容易区分,上一章中有提到材质可以改变3D物体的颜色显示。 选中Player查看其MeshRenderer中的材质资源,发现它是一个内置的standard-material材质,材质的属性不能 阅读全文
posted @ 2024-12-16 16:21 EricShx 阅读(31) 评论(0) 推荐(0)
摘要:创建项目 创建一个空的3D项目,命名为3DRunGame cc.MeshRenderer组件 MeshRenderer(网格渲染器)组件用于显示一个静态的 3D 模型。通过 Mesh 属性设置模型网格,通过 Materials 属性控制模型的显示外观。 一个MeshRenderer有2个比较重要的属 阅读全文
posted @ 2024-12-16 16:07 EricShx 阅读(33) 评论(0) 推荐(0)
摘要:玩法介绍 点击小车移到车位接人,接满人胜利,如果排在最前面的人没有上车(车位没有对应的车),后面的人也无法上车。 逻辑实现 车子自动寻路移动到停车位 车子根据车头的位置发射一条射线,确定和边界的位置定点后,根据定点做一个缓动动画。 2. 生成乘客、乘客上车 3. 车辆之间的碰撞检测 4. 关卡生成 阅读全文
posted @ 2024-12-09 18:46 EricShx 阅读(90) 评论(0) 推荐(0)
摘要:在3D场景中2DUI和3D的混合需要用到一系列渲染纹理的技术。 纹理 在开发中,纹理贴图资源是一种用于程序采样的资源,如模型上的贴图、精灵上的 UI。当程序渲染 UI 或者模型时,会使用纹理坐标获取纹理颜色,然后填充在模型网格上,再加上光照等等一系列处理便渲染出了整个场景。 关于纹理:https:/ 阅读全文
posted @ 2024-10-25 15:33 EricShx 阅读(449) 评论(0) 推荐(0)
摘要:引擎提供了UICoordinateTracker 组件,又叫UI 坐标跟踪映射组件,可以在 UI 上执行坐标转换以及模拟透视相机下 3D 物体近大远小效果。通过事件的方式将转换后的坐标以及物体在视口下的占比返回。适用于 3D 人物血条以及姓名条之类功能。 UICoordinateTracker 属性 阅读全文
posted @ 2024-10-25 15:33 EricShx 阅读(145) 评论(0) 推荐(0)
摘要:目标:相机跟随目标,相机不要旋转 思路:设置(固定)好距离目标的高度和距离,计算相机要走到的目标位置,对相机进行插值运算更新位置。 实现: /** 距离目标距离 */ @property camera_offset: Vec3 = new Vec3(0, 120, 200); /** 移动差值移动系 阅读全文
posted @ 2024-10-24 17:50 EricShx 阅读(95) 评论(0) 推荐(0)
摘要:这里只记录一般角色移动控制。比如摇杆输入。 移动控制 1.在触摸屏幕时,把摇杆移动到触摸位置。 2.在触摸移动时移动标点,标点要限制在摇杆范围内 把标点和摇杆范围(半径)的比值作为摇杆输入系数,通过这个移动系数来控制角色的移动,比值大就移动的快一些,比值小就移动的慢一些。 import { _dec 阅读全文
posted @ 2024-10-24 15:59 EricShx 阅读(52) 评论(0) 推荐(0)
摘要:这一篇接着完善demo。 添加光照 光影是描述游戏的重要渲染特性,通过光源和阴影可以模拟更加真实的游戏世界,提供更好的沉浸感和代入感。 在创建项目时,场景默认带了一个挂载了 cc.DirectionalLight 组件的平行光 Main Light 节点。 虽然有光源,但运行时发现并没有阴影,阴影需 阅读全文
posted @ 2024-10-23 15:47 EricShx 阅读(61) 评论(0) 推荐(0)
摘要:a:双击节点可以聚焦(节点到场景编辑中间),在场景编辑时想要看哪个节点,先双击聚焦它 b:通过鼠标滚轮可以拉远/拉近场景,如果a还看不到就尝试滚动鼠标滚轮。 c:按住alt键(Mac上是Opt键),同时按下鼠标左键拖动,可以360度无死角查看模型节点。 d:按住鼠标右键,场景编辑器上会显示Q、W、E 阅读全文
posted @ 2024-10-23 11:41 EricShx 阅读(116) 评论(0) 推荐(0)