Godot Version
4.2.1
Question
I have 2 questions
- I have this code
extends Camera3D
const SPEED = 0.03
var floor_colide = false
var wall_colide = false
@onready var player := $“.”
@onready var collision = $RayCast3D
func _camera_movement():
if Input.is_action_just_pressed(“Camera Right”):
rotate_y(- 1.6)
if Input.is_action_just_pressed("Camera Left"):
rotate_y(+ 1.6)
if Input.is_action_just_pressed("Camera Back"):
rotate_y(+ 3.2)
func _player_movement():
var input_dir = Input.get_vector(“Left”, “Right”, “Forward”, “Nothing”)
var gridPosition = transform.basis * Vector3(input_dir.x, 0, input_dir.y)
transform.origin = lerp(transform.origin, gridPosition, SPEED)
func _physics_process(delta):
_camera_movement()
collision.collision_mask = 1;
collision.set_collision_mask(collision.collision_mask)
collision.get_collision_mask()
_player_movement(),
but the camera moves back to its initial position(I’m trying to do a movement based in vectors and the player is a Camera3D with a mesh and raycast)
- I was trying to do a raycast to detect collisions with walls or the floor but I don’t know how to doit