20Connecting the laser to the level
给玩家增加手表右键/空格键单击时增加发射激光动作,如果激光击中的物体带有hit函数那么调用它表明被攻击了。 一些细节 判断对象是否有某个方法: 1.has_method:obj.has_method(name) 2.in检查对象是否具有属性、方法 name in obj 激光自动销毁 1.激光和其他对象碰撞时...
给玩家增加手表右键/空格键单击时增加发射激光动作,如果激光击中的物体带有hit函数那么调用它表明被攻击了。 一些细节 判断对象是否有某个方法: 1.has_method:obj.has_method(name) 2.in检查对象是否具有属性、方法 name in obj 激光自动销毁 1.激光和其他对象碰撞时...
AnimatedSprite2D(典型的帧动画2D节点) Sprite Frames:需要新建一个 SpriteFrames,中下方面板将出现 SpriteFrames 中下面板 Autoplay on Load选择是否自动播放 每秒动画帧。默认5 FPS Sprite2D (为什么要讲这些东西,因为AnimationPlay...
介绍灯光(Light) 两个可用灯光节点: 1.PointLight2D: 点光源。场景中某个位置的单个光源(比如手电筒、灯泡) Color:调节光的原色 Energy(能量):调节光的亮度 Text Scale:调节光源照射大小、距离 Shadow:阴影(这个东西配合LightOccluder2D使用).照射到其他节点(节点需设置LightOccluder)产生影...
粒子是动态生成的小物体(用于制造烟雾),这节除了制造烟雾还给开枪时在枪口制造几个粒子 GPUParticles2D/CPUParticles2D 节点生成粒子效果 Process Material: 处理材质(有两种ShaderProcessMaterial、ParticleProcessMaerial) Texture:渲染的纹理,不设置是一个小的四方体 ...
介绍Tile Map & Physics。 laser是一个区域(Area2D)不是一个物体,物体可能是玩家(CharacterBody2D)或者手榴弹(RigidBody2D) Layer、Masks 在Godot中将可碰撞对象放置在不同的layer上,然后告诉它们只与特定的layer上的对象交互。该系统的工作方式是: Layer决定对象本身位于那一层上(在Inspe...
介绍TileMaps(瓦片地图) Sprite2D 用Sprite2D实现图片重复填充效果 1.Texture.Repeat=Enable:Texture重复填充 2.Region.Enable=true,编辑图片区域(用于重复填充的图片区域) 其他属性: Visibility.Modulate调节节点RGB...
介绍Camera:使节点(比如玩家)聚焦在一个地方(比如中心)而周围的场景却随着该节点移动而移动。 属性 Position Smoothing: 平滑属性,让相机对应的节点移动起来视觉上感觉不突兀而更加平滑 Zoom:相机缩放级别 Limit:限制相机可以走多远.(比如:left=0则左边移动不能超过0像素,相机等于0时永远不会再往左移动) offset:相机偏移.(比如...
通过grenade介绍RigidBody2D的使用,通过Player扔的方向投出grenade RigidBody2D的一些属性 Gravity Scale(重力缩放):0静止,默认为1物体向下移动 Linear Velocity(线性加速度) Damp(阻尼) :(包含x、y轴):比如设置x=100,y=0(在未设置PhsicsMaterial...
标题是Creating custom scenes,更应该是动态加载scene,因为改节讲的是怎么把laser动态加载到level场景中 动态加载scene步骤 1.加载:var x_scene:PackedScene = preload('res://path/name.tscn') 2.实例化:scene=x_scene.instantiate() 3.添加到节点树:ad...
godot scene内的节点的signal不能跨越scene,这个时候自定义siganl就派上用场 自定义 siganl步骤: 定义:signal my_signal([p1,p2...]) 发射:signal my_signal.emit([p1,p2...]) 使用:现在跟使用普通的signal一样 Timer:跟其他的语言的计时器一样的概念。用到的属性和sigan...