您当前的位置: 首页 > 

开发游戏的老王

暂无认证

  • 2浏览

    0关注

    803博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

Godot Engine:可约束轴向的第三人称摄像机实现

开发游戏的老王 发布时间:2019-12-30 14:14:33 ,浏览量:2

代码
extends Camera

export var lock_x :bool = false
export var lock_y :bool = false
export var lock_z :bool = false
export(float,EXP,0.1,1.0,0.1) var smoothing : float = 0.5

var target:Spatial
var offset:Vector3

func _ready():
	add_to_group("camera")
	var players :Array = get_tree().get_nodes_in_group("player")
	if players != null && not players.empty():
		target = players[0]
		offset = get_global_transform().origin - target.get_global_transform().origin
	else:
		print("player not found in scene")


func _physics_process(delta):
	if target == null:
		print("target lost")
		return
	var cam:Vector3 = get_global_transform().origin
	var focus:Vector3 = target.get_global_transform().origin
	var tgt = focus + offset
	if lock_x:
		tgt.x = cam.x
	if lock_y:
		tgt.y = cam.y
	if lock_z:
		tgt.z = cam.z
	look_at_from_position(lerp(cam,tgt,smoothing),focus,Vector3.UP)

x/y/z轴都不锁定的效果

在这里插入图片描述

仅锁定z轴的效果

在这里插入图片描述

关注
打赏
1656935939
查看更多评论
立即登录/注册

微信扫码登录

0.0384s