【插件】镜头限制范围大小动态改变

使用方法:

1.创建node2d,在node2d节点上创建场景ZoomCamera2D镜头子节点
2.将 【initial_camera.gd】挂载在node2d节点上

initial_camera.gd (5.8 KB)

image
3.在node2d节点上右侧检查器配置数据(检查器名称和数据库变量名称一致)


4.在数据库的项目变量配置对应的名称和变量(变量名称和检查器名称一致)


5.额外:可以在数据库的项目开关配置重置读取变量开关(名称和数据库重置开关名称一致)

功能内容:
1.读取数据库的项目变量来改变镜头的限制范围 (limit left -200 limit right xxx )
2.根据数据库的项目开关可以开启或是重新读取镜头变量数据(开关动态读取) (refresh switch record)
3.自动场景开始时候读取一次已设置的镜头大小

:warning::如是要重新读取镜头数据,在动作改变变量后,开启开关,需要【等待0.1秒】,再关闭开关
切换开关太快会读取不到。

可以用于:
1.动态改变镜头可视限制范围:平时如果场景有空缺位置很出戏,可以当角色经过检查点时候改变限制范围,配合缩放镜头大小动作做到平滑缩放等
2.压缩场景数量:例如平时做场景可能都需要一次一次画,场景之间都是靠传送门或是条件链接,如果是非线性游戏后期可能很难管理场景之间的条件链接,可以用一个空场景来生成其他所有已经做好的场景,再用坐标生成角色等内容,镜头范围就可以适配场景大小自由调整了(空场景内生成场景读取对象,场景读取对象读取场景id,生成对应场景,对应场景改变镜头数据)
:warning::但要小心,在空场景内用场景去生成A场景,如果A场景里有怪物或是玩家,虽然可以进行碰撞互动,但是之间距离条件(攻击距离等)不会启用,并且会有错位等问题
可以使用空场景单独通过id生成A场景,B角色(需要坐标变量),C怪物(需要坐标变量)等

演示:

1783398931281