summaryrefslogtreecommitdiff
path: root/demos/3d/kinematic_char
diff options
context:
space:
mode:
Diffstat (limited to 'demos/3d/kinematic_char')
-rw-r--r--demos/3d/kinematic_char/cubelib.resbin11532 -> 0 bytes
-rw-r--r--demos/3d/kinematic_char/cubio.gd86
-rw-r--r--demos/3d/kinematic_char/engine.cfg17
-rw-r--r--demos/3d/kinematic_char/follow_camera.gd57
-rw-r--r--demos/3d/kinematic_char/kinebody3d.pngbin6078 -> 0 bytes
-rw-r--r--demos/3d/kinematic_char/level.scnbin18847 -> 0 bytes
-rw-r--r--demos/3d/kinematic_char/purple_wood.texbin173520 -> 0 bytes
-rw-r--r--demos/3d/kinematic_char/purplecube.scnbin7927 -> 0 bytes
-rw-r--r--demos/3d/kinematic_char/twood.texbin168054 -> 0 bytes
-rw-r--r--demos/3d/kinematic_char/white_wood.texbin169001 -> 0 bytes
10 files changed, 0 insertions, 160 deletions
diff --git a/demos/3d/kinematic_char/cubelib.res b/demos/3d/kinematic_char/cubelib.res
deleted file mode 100644
index 130b9529fe..0000000000
--- a/demos/3d/kinematic_char/cubelib.res
+++ /dev/null
Binary files differ
diff --git a/demos/3d/kinematic_char/cubio.gd b/demos/3d/kinematic_char/cubio.gd
deleted file mode 100644
index 769ada3bca..0000000000
--- a/demos/3d/kinematic_char/cubio.gd
+++ /dev/null
@@ -1,86 +0,0 @@
-
-extends KinematicBody
-
-# Member variables
-var g = -9.8
-var vel = Vector3()
-const MAX_SPEED = 5
-const JUMP_SPEED = 7
-const ACCEL= 2
-const DEACCEL= 4
-const MAX_SLOPE_ANGLE = 30
-
-
-func _fixed_process(delta):
- var dir = Vector3() # Where does the player intend to walk to
- var cam_xform = get_node("target/camera").get_global_transform()
-
- if (Input.is_action_pressed("move_forward")):
- dir += -cam_xform.basis[2]
- if (Input.is_action_pressed("move_backwards")):
- dir += cam_xform.basis[2]
- if (Input.is_action_pressed("move_left")):
- dir += -cam_xform.basis[0]
- if (Input.is_action_pressed("move_right")):
- dir += cam_xform.basis[0]
-
- dir.y = 0
- dir = dir.normalized()
-
- vel.y += delta*g
-
- var hvel = vel
- hvel.y = 0
-
- var target = dir*MAX_SPEED
- var accel
- if (dir.dot(hvel) > 0):
- accel = ACCEL
- else:
- accel = DEACCEL
-
- hvel = hvel.linear_interpolate(target, accel*delta)
-
- vel.x = hvel.x
- vel.z = hvel.z
-
- var motion = move(vel*delta)
-
- var on_floor = false
- var original_vel = vel
- var floor_velocity = Vector3()
- var attempts = 4
-
- while(is_colliding() and attempts):
- var n = get_collision_normal()
-
- if (rad2deg(acos(n.dot(Vector3(0, 1, 0)))) < MAX_SLOPE_ANGLE):
- # If angle to the "up" vectors is < angle tolerance,
- # char is on floor
- floor_velocity = get_collider_velocity()
- on_floor = true
-
- motion = n.slide(motion)
- vel = n.slide(vel)
- if (original_vel.dot(vel) > 0):
- # Do not allow to slide towads the opposite direction we were coming from
- motion=move(motion)
- if (motion.length() < 0.001):
- break
- attempts -= 1
-
- if (on_floor and floor_velocity != Vector3()):
- move(floor_velocity*delta)
-
- if (on_floor and Input.is_action_pressed("jump")):
- vel.y = JUMP_SPEED
-
- var crid = get_node("../elevator1").get_rid()
-
-
-func _ready():
- set_fixed_process(true)
-
-
-func _on_tcube_body_enter(body):
- get_node("../ty").show()
diff --git a/demos/3d/kinematic_char/engine.cfg b/demos/3d/kinematic_char/engine.cfg
deleted file mode 100644
index b3060b65e0..0000000000
--- a/demos/3d/kinematic_char/engine.cfg
+++ /dev/null
@@ -1,17 +0,0 @@
-[application]
-
-name="Kinematic Character 3D"
-main_scene="res://level.scn"
-icon="res://kinebody3d.png"
-
-[input]
-
-move_forward=[key(Up)]
-move_left=[key(Left)]
-move_right=[key(Right)]
-move_backwards=[key(Down)]
-jump=[key(Space)]
-
-[rasterizer]
-
-shadow_filter=3
diff --git a/demos/3d/kinematic_char/follow_camera.gd b/demos/3d/kinematic_char/follow_camera.gd
deleted file mode 100644
index 37a1402053..0000000000
--- a/demos/3d/kinematic_char/follow_camera.gd
+++ /dev/null
@@ -1,57 +0,0 @@
-
-extends Camera
-
-# Member variables
-var collision_exception = []
-export var min_distance = 0.5
-export var max_distance = 4.0
-export var angle_v_adjust = 0.0
-export var autoturn_ray_aperture = 25
-export var autoturn_speed = 50
-var max_height = 2.0
-var min_height = 0
-
-
-func _fixed_process(dt):
- var target = get_parent().get_global_transform().origin
- var pos = get_global_transform().origin
- var up = Vector3(0, 1, 0)
-
- var delta = pos - target
-
- # Regular delta follow
-
- # Check ranges
- if (delta.length() < min_distance):
- delta = delta.normalized()*min_distance
- elif (delta.length() > max_distance):
- delta = delta.normalized()*max_distance
-
- # Check upper and lower height
- if (delta.y > max_height):
- delta.y = max_height
- if (delta.y < min_height):
- delta.y = min_height
-
- pos = target + delta
-
- look_at_from_pos(pos, target, up)
-
- # Turn a little up or down
- var t = get_transform()
- t.basis = Matrix3(t.basis[0], deg2rad(angle_v_adjust))*t.basis
- set_transform(t)
-
-
-func _ready():
- # Find collision exceptions for ray
- var node = self
- while(node):
- if (node extends RigidBody):
- collision_exception.append(node.get_rid())
- break
- else:
- node = node.get_parent()
- set_fixed_process(true)
- # This detaches the camera transform from the parent spatial node
- set_as_toplevel(true)
diff --git a/demos/3d/kinematic_char/kinebody3d.png b/demos/3d/kinematic_char/kinebody3d.png
deleted file mode 100644
index 41f0edb246..0000000000
--- a/demos/3d/kinematic_char/kinebody3d.png
+++ /dev/null
Binary files differ
diff --git a/demos/3d/kinematic_char/level.scn b/demos/3d/kinematic_char/level.scn
deleted file mode 100644
index 0082f55f43..0000000000
--- a/demos/3d/kinematic_char/level.scn
+++ /dev/null
Binary files differ
diff --git a/demos/3d/kinematic_char/purple_wood.tex b/demos/3d/kinematic_char/purple_wood.tex
deleted file mode 100644
index cdf0f810f1..0000000000
--- a/demos/3d/kinematic_char/purple_wood.tex
+++ /dev/null
Binary files differ
diff --git a/demos/3d/kinematic_char/purplecube.scn b/demos/3d/kinematic_char/purplecube.scn
deleted file mode 100644
index e3ed1bf84b..0000000000
--- a/demos/3d/kinematic_char/purplecube.scn
+++ /dev/null
Binary files differ
diff --git a/demos/3d/kinematic_char/twood.tex b/demos/3d/kinematic_char/twood.tex
deleted file mode 100644
index 65c1bd043c..0000000000
--- a/demos/3d/kinematic_char/twood.tex
+++ /dev/null
Binary files differ
diff --git a/demos/3d/kinematic_char/white_wood.tex b/demos/3d/kinematic_char/white_wood.tex
deleted file mode 100644
index e003442e70..0000000000
--- a/demos/3d/kinematic_char/white_wood.tex
+++ /dev/null
Binary files differ