Split tests into multiple stages (#5)

This commit is contained in:
Rafał Mikrut 2020-11-17 19:21:50 +01:00 committed by GitHub
parent a96aed257d
commit 322f2610b0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
18 changed files with 709 additions and 195 deletions

View File

@ -4,7 +4,7 @@ on: [push, pull_request]
jobs:
linux-sanitizer:
runs-on: "ubuntu-20.04"
name: Editor and exported project with sanitizers (target=debug/release, tools=yes/no, debug_symbols=yes/full, use_ubsan=yes, use_asan=yes)
name: Editor and exported project with sanitizers (target=debug/release, tools=yes/no, debug_symbols=yes, use_ubsan=yes, use_asan=yes)
steps:
- uses: actions/checkout@v2
@ -54,9 +54,9 @@ jobs:
run: |
cd godot
scons p=x11 -j2 use_asan=yes use_ubsan=yes CCFLAGS="-fsanitize=shift,shift-exponent,integer-divide-by-zero,unreachable,vla-bound,null,return,signed-integer-overflow,bounds,float-divide-by-zero,float-cast-overflow,nonnull-attribute,returns-nonnull-attribute,bool,enum,vptr"
scons tools=no target=release debug_symbols=full use_asan=yes use_ubsan=yes CCFLAGS="-fsanitize=shift,shift-exponent,integer-divide-by-zero,unreachable,vla-bound,null,return,signed-integer-overflow,bounds,float-divide-by-zero,float-cast-overflow,nonnull-attribute,returns-nonnull-attribute,bool,enum,vptr"
true || scons tools=no target=release debug_symbols=yes use_asan=yes use_ubsan=yes CCFLAGS="-fsanitize=shift,shift-exponent,integer-divide-by-zero,unreachable,vla-bound,null,return,signed-integer-overflow,bounds,float-divide-by-zero,float-cast-overflow,nonnull-attribute,returns-nonnull-attribute,bool,enum,vptr"
cp bin/godot.x11.tools.64s ../
cp bin/godot.x11.opt.64s ../
true || cp bin/godot.x11.opt.64s ../
cd ../
rm -rf godot
@ -72,12 +72,12 @@ jobs:
DRI_PRIME=0 xvfb-run ./godot.x11.tools.64s 60 --video-driver GLES3 --path $(pwd) 2>&1 | tee sanitizers_log.txt || true
misc/check_ci_log.py sanitizers_log.txt
# Export project and run it to check for possible leaks and invalid memory usage
- name: Exporting and running project
run: |
curr="$(pwd)/godot.x11.opt.64s"
sed -i "s|PATH_TO_CHANGE|$curr|" export_presets.cfg
DRI_PRIME=0 xvfb-run ./godot.x11.tools.64s --export-debug "Linux/X11" test_project 2>&1 | tee sanitizers_log.txt || true
misc/check_ci_log.py sanitizers_log.txt
DRI_PRIME=0 xvfb-run ./test_project 20 2>&1 | tee sanitizers_log.txt || true
misc/check_ci_log.py sanitizers_log.txt
# # Export project and run it to check for possible leaks and invalid memory usage
# - name: Exporting and running project
# run: |
# curr="$(pwd)/godot.x11.opt.64s"
# sed -i "s|PATH_TO_CHANGE|$curr|" export_presets.cfg
# DRI_PRIME=0 xvfb-run ./godot.x11.tools.64s --export-debug "Linux/X11" test_project 2>&1 | tee sanitizers_log.txt || true
# misc/check_ci_log.py sanitizers_log.txt
# DRI_PRIME=0 xvfb-run ./test_project 20 2>&1 | tee sanitizers_log.txt || true
# misc/check_ci_log.py sanitizers_log.txt

1
.gitignore vendored
View File

@ -8,3 +8,4 @@ logs/
TEMP/
#export_presets.cfg
logs/
.godot/

View File

@ -7,7 +7,7 @@ signal roman
onready var sew : int = 0
func _ready() -> void:
func _process(delta: float) -> void:
assert(2>1)
@ -18,46 +18,46 @@ func _ready() -> void:
52 % -25
arr.append(254)
arr[36235 % arr.size()]
arr[-36235 % arr.size()]
arr[45 % arr.size()]
arr[-45 % arr.size()]
if dict.has(strin):
dict[strin]
sew = sew
number is Node2D
~36235
-36235
36235 * 36235
36235 / (21)
36235 % (21)
36235 + 36235
36235 - 36235
36235 >> int(max(min(36235,0),63))
36235 << int(max(min(36235,0),63))
36235 & 36235
36235 ^ 36235
36235 | 36235
36235 < 36235
36235 > 36235
36235 == 36235
36235 != 36235
36235 >= 36235
36235 <= 36235
36235 in ["asfasfqw","asfqwgqani"]
!36235
not 36235
36235 and 36235
36235 && 36235
36235 or 36235
36235 || 36235
~45
-45
45 * 45
45 / (21)
45 % (21)
45 + 45
45 - 45
1 >> int(max(min(12,0),61))
1 << int(max(min(12,0),61))
45 & 45
45 ^ 45
45 | 45
45 < 45
45 > 45
45 == 45
45 != 45
45 >= 45
45 <= 45
45 in ["asfasfqw","asfqwgqani"]
!45
not 45
45 and 45
45 && 45
45 or 45
45 || 45
number = 36235
number += 36235
number -= 36235
number *= 36235
number = 45
number += 45
number -= 45
number *= 45
number /= 21
number %= 21
number &= 36235
number |= 36235
number &= 45
number |= 45
1234567890
0x0123456789ABCDEF
@ -82,7 +82,7 @@ func _ready() -> void:
var func_ref = funcref(self,"qqr")
func_ref.call_func("QWQW")
if 36235:
if 45:
pass
else:
pass
@ -91,29 +91,29 @@ func _ready() -> void:
while(rr != 0):
rr -= 1
match 36235:
match 45:
2:
36235
45
5:
pass
36235
45
3:
continue
false
_:
[521252,"asfasfw", "asfw"]
match typeof(36235):
match typeof(45):
TYPE_AABB:
36235
45
TYPE_INT:
36235
45
match 36235:
match 45:
2:
36235
45
# var RR:
# RR = 36235
# RR = 45
match randi() % 26:
2:

View File

@ -1,7 +1,7 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://MainScenes/Operators.gd" type="Script" id=1]
[ext_resource path="res://MainScenes/Operators2.gd" type="Script" id=2]
[ext_resource path="res://AIO/Operators/Operators.gd" type="Script" id=1]
[ext_resource path="res://AIO/Operators/Operators2.gd" type="Script" id=2]
[node name="Operators" type="Node2D"]
script = ExtResource( 1 )

View File

@ -28,7 +28,7 @@ extends Node2D
#]
func _ready() -> void:
func _process(delta: float) -> void:
# for i in []
for i in [

View File

@ -4,7 +4,7 @@
[ext_resource path="res://MainScenes/Spatial.tscn" type="PackedScene" id=2]
[ext_resource path="res://MainScenes/Node2D.tscn" type="PackedScene" id=3]
[ext_resource path="res://MainScenes/Other.tscn" type="PackedScene" id=4]
[ext_resource path="res://MainScenes/Operators.tscn" type="PackedScene" id=5]
[ext_resource path="res://AIO/Operators/Operators.tscn" type="PackedScene" id=5]
[ext_resource path="res://Physics/2D/Physics2D.tscn" type="PackedScene" id=6]
[ext_resource path="res://Rendering/Lights3D/Lights3D.tscn" type="PackedScene" id=7]
[ext_resource path="res://Rendering/Lights2D/Lights2D.tscn" type="PackedScene" id=8]

View File

@ -2,22 +2,53 @@ extends Node
const screen_size = Vector2(1024, 600)
const RANGE: int = 5
const RANGE: int = 10
var time_to_show: float = -1000.0
const PRINT_TIME_EVERY_SECONDS : int = 5
var time_to_print_next_time : int = PRINT_TIME_EVERY_SECONDS
var current_run_time : float = 0.0
var time_to_show: float = 30 # How long test works
var time_for_each_step : float = -1.0
# Each scene runs alone
const alone_steps : Array = [
"res://MainScenes/Control.tscn",
"res://MainScenes/Node2D.tscn",
"res://MainScenes/Other.tscn",
"res://MainScenes/Spatial.tscn",
"res://Physics/2D/Physics2D.tscn",
"res://Physics/3D/Physics3D.tscn",
"res://Rendering/Lights2D/Lights2D.tscn",
"res://Rendering/Lights3D/Lights3D.tscn",
]
# All scenes run in one step
# This should be put regression scripts which needs to run only once
const all_in_one : Array = [
"res://AIO/Operators/Operators.tscn",
]
func _init():
# In case when user doesn't provide time
time_for_each_step = time_to_show / (alone_steps.size() + 1)
for argument in OS.get_cmdline_args():
var rr: String = argument
if rr.find("tscn") != -1: # Ignore all tscn scenes/names
continue
time_to_show = argument.to_float()
print("Time set to: " + str(time_to_show))
time_for_each_step = time_to_show / (alone_steps.size() + 1)
print("Time set to: " + str(time_to_show) + " seconds with "+ str(alone_steps.size() + 1) + " steps, each step will take " + str(time_for_each_step) + " seconds.")
break
func _process(delta: float) -> void:
time_to_show -= delta
if time_to_show < 0 && time_to_show > -500:
current_run_time += delta
if current_run_time > time_to_print_next_time:
print("Test is running now " + str(time_to_print_next_time) + " seconds")
time_to_print_next_time += PRINT_TIME_EVERY_SECONDS
if current_run_time > time_to_show:
get_tree().quit()

View File

@ -56,6 +56,78 @@ position = Vector2( 901.644, 373.039 )
[node name="Area2D20" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 787.351, 544.478 )
[node name="Area2D9" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 660.036, 115.278 )
[node name="Area2D11" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 355.255, 161.312 )
[node name="Area2D13" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 482.247, 261.319 )
[node name="Area2D15" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 56.8237, 288.304 )
[node name="Area2D17" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 183.816, 388.311 )
[node name="Area2D21" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 594.953, 275.605 )
[node name="Area2D22" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 836.238, 204.172 )
[node name="Area2D23" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 721.945, 375.611 )
[node name="Area2D24" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 696.901, 221.117 )
[node name="Area2D25" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 392.12, 267.151 )
[node name="Area2D26" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 519.112, 367.158 )
[node name="Area2D27" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 93.689, 394.143 )
[node name="Area2D28" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 220.681, 494.15 )
[node name="Area2D29" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 631.818, 381.444 )
[node name="Area2D30" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 873.103, 310.011 )
[node name="Area2D31" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 758.81, 481.45 )
[node name="Area2D32" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 639.819, 9.43819 )
[node name="Area2D33" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 335.038, 55.4722 )
[node name="Area2D34" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 462.03, 155.479 )
[node name="Area2D35" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 36.6071, 182.464 )
[node name="Area2D36" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 163.599, 282.471 )
[node name="Area2D37" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 574.736, 169.765 )
[node name="Area2D38" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 816.021, 98.3322 )
[node name="Area2D39" parent="Area2D" instance=ExtResource( 2 )]
position = Vector2( 701.728, 269.771 )
[node name="KinematicBody2D" type="Node2D" parent="."]
[node name="KinematicBody2D" parent="KinematicBody2D" instance=ExtResource( 3 )]
@ -73,6 +145,21 @@ position = Vector2( 509.622, 242.332 )
[node name="KinematicBody2D5" parent="KinematicBody2D" instance=ExtResource( 3 )]
position = Vector2( 914.078, 76.812 )
[node name="KinematicBody2D6" parent="KinematicBody2D" instance=ExtResource( 3 )]
position = Vector2( 251.025, 329.752 )
[node name="KinematicBody2D7" parent="KinematicBody2D" instance=ExtResource( 3 )]
position = Vector2( 540.685, 492.602 )
[node name="KinematicBody2D8" parent="KinematicBody2D" instance=ExtResource( 3 )]
position = Vector2( 493.966, 158.892 )
[node name="KinematicBody2D9" parent="KinematicBody2D" instance=ExtResource( 3 )]
position = Vector2( 670.165, 269.684 )
[node name="KinematicBody2D10" parent="KinematicBody2D" instance=ExtResource( 3 )]
position = Vector2( 1074.62, 104.164 )
[node name="StaticBody2D" type="Node2D" parent="."]
position = Vector2( 73.6327, 117.071 )
@ -87,6 +174,18 @@ position = Vector2( 618.011, -2.82837 )
[node name="StaticBody2D4" parent="StaticBody2D" instance=ExtResource( 4 )]
position = Vector2( 793.374, 120.208 )
[node name="StaticBody2D6" parent="StaticBody2D" instance=ExtResource( 4 )]
position = Vector2( 68.974, 216.436 )
[node name="StaticBody2D7" parent="StaticBody2D" instance=ExtResource( 4 )]
position = Vector2( 240.094, 483.722 )
[node name="StaticBody2D8" parent="StaticBody2D" instance=ExtResource( 4 )]
position = Vector2( 686.985, 213.607 )
[node name="StaticBody2D9" parent="StaticBody2D" instance=ExtResource( 4 )]
position = Vector2( 862.348, 336.644 )
[node name="StaticBody2D5" parent="StaticBody2D" instance=ExtResource( 4 )]
position = Vector2( 704.278, 296.985 )
@ -118,3 +217,15 @@ position = Vector2( 490.543, 544.06 )
[node name="RigidBody2D9" parent="RigidBody2D" instance=ExtResource( 5 )]
position = Vector2( 490.543, 544.06 )
[node name="RigidBody2D10" parent="RigidBody2D" instance=ExtResource( 5 )]
position = Vector2( 282.873, 201.928 )
[node name="RigidBody2D11" parent="RigidBody2D" instance=ExtResource( 5 )]
position = Vector2( 281.538, 57.7651 )
[node name="RigidBody2D12" parent="RigidBody2D" instance=ExtResource( 5 )]
position = Vector2( 17.2386, 558.33 )
[node name="RigidBody2D13" parent="RigidBody2D" instance=ExtResource( 5 )]
position = Vector2( 17.2386, 558.33 )

View File

@ -2,6 +2,7 @@
[ext_resource path="res://icon 32x32.png" type="Texture" id=1]
[ext_resource path="res://Physics/3D/StaticArena.gd" type="Script" id=2]
[ext_resource path="res://Physics/3D/RigidBody3D.tscn" type="PackedScene" id=3]
[sub_resource type="PhysicsMaterial" id=1]
friction = 0.89
@ -31,8 +32,6 @@ extents = Vector3( 11.8794, 1.37845, 22.281 )
[sub_resource type="BoxShape" id=7]
extents = Vector3( 11.8794, 1.37845, 22.281 )
[sub_resource type="SphereShape" id=8]
[node name="Physics3D" type="Spatial"]
[node name="DirectionalLight" type="DirectionalLight" parent="."]
@ -135,7 +134,7 @@ width = 23.9394
depth = 44.6359
[node name="StaticBody7" type="StaticBody" parent="StaticArena"]
transform = Transform( -0.642787, 0.192579, -0.741443, 0, 0.967885, 0.251394, 0.766045, 0.161593, -0.622144, 10.0702, 7.03413, 0 )
transform = Transform( -0.638995, 0.193375, -0.744507, 0, 0.967885, 0.251394, 0.769211, 0.16064, -0.618474, 10.0702, 7.03413, 0 )
[node name="CollisionShape" type="CollisionShape" parent="StaticArena/StaticBody7"]
transform = Transform( 1, -9.31323e-10, 0, 0, 1, 1.49012e-08, 3.72529e-09, 1.49012e-08, 1, 0, 0, 0 )
@ -145,127 +144,197 @@ shape = SubResource( 7 )
width = 23.9394
depth = 44.6359
[node name="StaticBody8" type="StaticBody" parent="StaticArena"]
transform = Transform( -0.314953, 0.2386, -0.918626, 0, 0.967885, 0.251394, 0.949107, 0.0791774, -0.304838, 10.0702, 7.03413, 24.278 )
[node name="CollisionShape" type="CollisionShape" parent="StaticArena/StaticBody8"]
transform = Transform( 1, -9.31323e-10, 0, 0, 1, 1.49012e-08, 3.72529e-09, 1.49012e-08, 1, 0, 0, 0 )
shape = SubResource( 7 )
[node name="CSGBox" type="CSGBox" parent="StaticArena/StaticBody8"]
width = 23.9394
depth = 44.6359
[node name="StaticBody9" type="StaticBody" parent="StaticArena"]
transform = Transform( 0.289683, -0.599318, 0.746259, -0.123608, -0.796586, -0.591753, 0.949107, 0.0791774, -0.304838, 10.0702, 12.1813, -25.555 )
[node name="CollisionShape" type="CollisionShape" parent="StaticArena/StaticBody9"]
transform = Transform( 1, -9.31323e-10, 0, 0, 1, 1.49012e-08, 3.72529e-09, 1.49012e-08, 1, 0, 0, 0 )
shape = SubResource( 7 )
[node name="CSGBox" type="CSGBox" parent="StaticArena/StaticBody9"]
width = 23.9394
depth = 44.6359
[node name="Objects" type="Spatial" parent="."]
[node name="RigidBody" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -15.1259, 41.1727, -21.1681 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8.50424, 25.2791, 14.7363 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody2" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3.7864, 12.6031, 19.1751 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody/CollisionShape"]
[node name="RigidBody3" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -16.9896, 12.6031, 28.8764 )
[node name="RigidBody2" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -15.1259, 41.1727, 20.5363 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody4" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -26.0866, 12.6031, -18.3703 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody2"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody5" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 22.2505, 12.6031, -20.7732 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody2/CollisionShape"]
[node name="RigidBody6" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 24.085, 12.6031, 8.2937 )
[node name="RigidBody3" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -15.1259, 50.364, -3.65285 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody7" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 18.9278, 12.6031, 23.4173 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody3"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody8" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3.85186, 24.8548, -9.87658 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody3/CollisionShape"]
[node name="RigidBody10" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 16.1328, 29.5375, -0.570342 )
[node name="RigidBody4" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7.28166, 41.1727, -21.1681 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody11" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 20.6287, 22.3987, -15.733 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody4"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody12" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -21.4547, 22.3987, -24.854 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody4/CollisionShape"]
[node name="RigidBody13" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2.76971, 22.3987, -22.9999 )
[node name="RigidBody5" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 7.80622, 41.1727, 12.6092 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody14" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -18.8426, 17.5784, -8.49029 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody5"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody9" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -29.188, 12.6031, 9.26155 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody5/CollisionShape"]
[node name="RigidBody15" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2.25014, 31.7526, 22.4342 )
[node name="RigidBody6" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 22.6969, 41.1727, -2.89124 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody16" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10.0405, 19.0766, 26.873 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody6"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody17" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -10.7355, 19.0766, 36.5743 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody6/CollisionShape"]
[node name="RigidBody18" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -19.8325, 19.0766, -10.6724 )
[node name="RigidBody7" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 21.6828, 41.1727, 19.6551 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody19" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 28.5046, 19.0765, -13.0753 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody7"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody20" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 30.3391, 19.0765, 15.9916 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody7/CollisionShape"]
[node name="RigidBody21" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 25.1819, 19.0765, 31.1152 )
[node name="RigidBody8" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -1.43668, 52.2537, -6.09689 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody22" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 2.40224, 31.3283, -2.17871 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody8"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody23" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 22.3869, 36.0109, 7.12753 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody8/CollisionShape"]
[node name="RigidBody24" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 26.8828, 28.8722, -8.03515 )
[node name="RigidBody9" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 14.3219, 62.862, -5.02587 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody25" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -15.2006, 28.8722, -17.1562 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody9"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody26" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3.48439, 28.8722, -15.3021 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody9/CollisionShape"]
[node name="RigidBody27" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -12.5885, 24.0519, -0.792418 )
[node name="RigidBody10" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -28.7139, 41.1727, -9.76783 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody28" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -22.9338, 19.0765, 16.9594 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody10"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody29" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -14.5598, 33.131, 4.91325 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody10/CollisionShape"]
[node name="RigidBody30" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2.26917, 20.455, 9.35204 )
[node name="RigidBody11" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8.57036, 66.2741, -5.42798 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody31" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -23.0452, 20.455, 19.0534 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody11"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody32" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -32.1422, 20.455, -28.1934 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody11/CollisionShape"]
[node name="RigidBody33" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 16.1949, 20.455, -30.5962 )
[node name="RigidBody12" type="RigidBody" parent="Objects"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -36.4517, 3.2776, -36.8718 )
linear_velocity = Vector3( 0, 5, 0 )
[node name="RigidBody34" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 18.0294, 20.455, -1.52936 )
[node name="CollisionShape" type="CollisionShape" parent="Objects/RigidBody12"]
transform = Transform( 7, 0, 0, 0, 7, 0, 0, 0, 7, 0, 0, 0 )
shape = SubResource( 8 )
[node name="RigidBody35" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 12.8723, 20.455, 13.5943 )
[node name="CSGSphere" type="CSGSphere" parent="Objects/RigidBody12/CollisionShape"]
[node name="RigidBody36" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -9.90743, 32.7067, -19.6996 )
[node name="RigidBody37" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 10.0773, 37.3894, -10.3934 )
[node name="RigidBody38" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 14.5731, 30.2506, -25.5561 )
[node name="RigidBody39" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -27.5103, 30.2506, -34.6771 )
[node name="RigidBody40" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8.82528, 30.2506, -32.823 )
[node name="RigidBody41" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -24.8981, 25.4303, -18.3134 )
[node name="RigidBody42" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -35.2435, 20.455, -0.56151 )
[node name="RigidBody43" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -8.30571, 39.6045, 12.6111 )
[node name="RigidBody44" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 3.98493, 26.9285, 17.0499 )
[node name="RigidBody45" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -16.7911, 26.9285, 26.7513 )
[node name="RigidBody46" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -25.8881, 26.9285, -20.4955 )
[node name="RigidBody47" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 22.449, 26.9285, -22.8984 )
[node name="RigidBody48" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 24.2835, 26.9285, 6.16852 )
[node name="RigidBody49" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 19.1264, 26.9285, 21.2921 )
[node name="RigidBody50" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -3.65333, 39.1802, -12.0018 )
[node name="RigidBody51" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 16.3314, 43.8629, -2.69553 )
[node name="RigidBody52" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 20.8272, 36.7241, -17.8582 )
[node name="RigidBody53" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -21.2562, 36.7241, -26.9792 )
[node name="RigidBody54" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -2.57118, 36.7241, -25.1251 )
[node name="RigidBody55" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -18.644, 31.9038, -10.6155 )
[node name="RigidBody56" parent="Objects" instance=ExtResource( 3 )]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -28.9894, 26.9285, 7.13636 )
[node name="Camera" type="Camera" parent="."]
transform = Transform( 0.922114, 0.23703, -0.305815, 0.0163102, 0.765871, 0.642788, 0.386575, -0.597711, 0.702354, -25.392, 55.117, 39.851 )

View File

@ -0,0 +1,5 @@
extends RigidBody
func _physics_process(delta: float) -> void:
add_force(Vector3(0,4 * delta ,0),Vector3(0,0,0))
pass

View File

@ -0,0 +1,18 @@
[gd_scene load_steps=3 format=2]
[ext_resource path="res://Physics/3D/RigidBody3D.gd" type="Script" id=1]
[sub_resource type="SphereShape" id=1]
[node name="RigidBody" type="RigidBody"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -23.2888, 33.1278, 19.1751 )
gravity_scale = 5.0
continuous_cd = true
linear_velocity = Vector3( 0, 5, 0 )
script = ExtResource( 1 )
[node name="CollisionShape" type="CollisionShape" parent="."]
transform = Transform( 5, 0, 0, 0, 5, 0, 0, 0, 5, 0, 0, 0 )
shape = SubResource( 1 )
[node name="CSGSphere" type="CSGSphere" parent="CollisionShape"]

View File

@ -2,4 +2,4 @@ extends Spatial
func _process(delta):
rotate(Vector3(0, 1, 0).normalized(), 1 * delta)
rotate(Vector3(0, 1, 0).normalized(), 2 * delta)

View File

@ -7,5 +7,6 @@
position = Vector2( 36.375, 37.875 )
texture = ExtResource( 2 )
texture_scale = 3.39
energy = 6.7
shadow_enabled = true
script = ExtResource( 1 )

View File

@ -1,10 +1,18 @@
[gd_scene load_steps=3 format=2]
[gd_scene load_steps=5 format=2]
[ext_resource path="res://Rendering/Lights2D/Light2D.tscn" type="PackedScene" id=2]
[sub_resource type="OccluderPolygon2D" id=1]
cull_mode = 1
polygon = PoolVector2Array( -17.0128, 10.1432, -70.8541, 35.4749, 23.5811, 77.3471, 22.5851, 14.3859 )
polygon = PoolVector2Array( -17.0128, 10.1432, -70.8541, 35.4749, 23.5811, 77.3471, 44.4183, 22.5847 )
[sub_resource type="OccluderPolygon2D" id=2]
cull_mode = 1
polygon = PoolVector2Array( -94.173, -250.818, -70.8541, 35.4749, 23.5811, 77.3471, 44.4183, 22.5847 )
[sub_resource type="OccluderPolygon2D" id=3]
cull_mode = 2
polygon = PoolVector2Array( 181.122, -348.705, -275.018, -211.507, -285.709, -168.744, 444.828, -400.378 )
[node name="Lights2D" type="Control"]
anchor_right = 1.0
@ -14,87 +22,194 @@ __meta__ = {
}
[node name="ColorRect" type="ColorRect" parent="."]
self_modulate = Color( 0.290196, 0.160784, 0, 0.529412 )
self_modulate = Color( 0.294118, 0.294118, 0.294118, 1 )
anchor_right = 1.0
anchor_bottom = 1.0
__meta__ = {
"_edit_use_anchors_": false
}
[node name="Light2D" parent="." instance=ExtResource( 2 )]
[node name="Lights" type="Node2D" parent="."]
[node name="Light2D2" parent="." instance=ExtResource( 2 )]
[node name="Light2D" parent="Lights" instance=ExtResource( 2 )]
[node name="Light2D2" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 552.563, -17.2793 )
[node name="Light2D3" parent="." instance=ExtResource( 2 )]
[node name="Light2D3" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 34.9607, 524.365 )
[node name="Light2D4" parent="." instance=ExtResource( 2 )]
[node name="Light2D4" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 679.842, 556.891 )
[node name="Light2D5" parent="." instance=ExtResource( 2 )]
[node name="Light2D5" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 418.213, 295.262 )
[node name="Light2D6" parent="." instance=ExtResource( 2 )]
[node name="Light2D6" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 863.69, 330.617 )
[node name="Light2D7" parent="." instance=ExtResource( 2 )]
[node name="Light2D7" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 336.188, 565.377 )
[node name="Light2D8" parent="." instance=ExtResource( 2 )]
[node name="Light2D8" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 996.626, 563.962 )
[node name="Light2D9" parent="." instance=ExtResource( 2 )]
[node name="Light2D9" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 582.261, 406.985 )
[node name="Light2D10" parent="." instance=ExtResource( 2 )]
[node name="Light2D10" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 600.646, 208.995 )
[node name="Light2D11" parent="." instance=ExtResource( 2 )]
[node name="Light2D11" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 842.477, 139.698 )
[node name="Light2D12" parent="." instance=ExtResource( 2 )]
position = Vector2( 240.022, 228.794 )
[node name="Light2D12" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( -187.091, -47.1287 )
[node name="Light2D13" parent="." instance=ExtResource( 2 )]
position = Vector2( 84.4581, 320.718 )
[node name="Light2D13" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( -342.655, 44.7952 )
[node name="Light2D14" parent="." instance=ExtResource( 2 )]
position = Vector2( 251.335, 390.014 )
[node name="Light2D14" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( -175.778, 114.091 )
[node name="Light2D15" parent="." instance=ExtResource( 2 )]
position = Vector2( 232.951, 64.745 )
[node name="Light2D15" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( -194.162, -211.178 )
[node name="Light2D16" parent="." instance=ExtResource( 2 )]
position = Vector2( 716.612, 57.674 )
[node name="Light2D16" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 289.499, -218.249 )
[node name="Light2D17" parent="." instance=ExtResource( 2 )]
[node name="Light2D35" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( -102.216, -74.258 )
[node name="Light2D36" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 841.085, 146.51 )
[node name="Light2D37" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 323.483, 688.155 )
[node name="Light2D38" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 968.364, 720.681 )
[node name="Light2D39" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 706.735, 459.052 )
[node name="Light2D40" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 1152.21, 494.407 )
[node name="Light2D41" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 624.71, 729.167 )
[node name="Light2D42" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 1285.15, 727.752 )
[node name="Light2D43" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 870.783, 570.775 )
[node name="Light2D44" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 889.168, 372.785 )
[node name="Light2D45" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 1131, 303.488 )
[node name="Light2D46" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 528.544, 392.584 )
[node name="Light2D47" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 372.98, 484.508 )
[node name="Light2D48" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 539.857, 553.804 )
[node name="Light2D49" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 521.473, 228.535 )
[node name="Light2D50" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 1005.13, 221.464 )
[node name="Light2D17" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 966.927, 117.071 )
[node name="LightOccluder2D" type="LightOccluder2D" parent="."]
[node name="Light2D18" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 136.375, 90.875 )
[node name="Light2D19" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 652.563, 35.7207 )
[node name="Light2D20" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 134.961, 577.365 )
[node name="Light2D21" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 779.842, 609.891 )
[node name="Light2D22" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 518.213, 348.262 )
[node name="Light2D23" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 963.69, 383.617 )
[node name="Light2D24" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 436.188, 618.377 )
[node name="Light2D25" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 1096.63, 616.962 )
[node name="Light2D26" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 682.261, 459.985 )
[node name="Light2D27" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 700.646, 261.995 )
[node name="Light2D28" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 942.477, 192.698 )
[node name="Light2D29" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 340.022, 281.794 )
[node name="Light2D30" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 184.458, 373.718 )
[node name="Light2D31" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 351.335, 443.014 )
[node name="Light2D32" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 332.951, 117.745 )
[node name="Light2D33" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 816.612, 110.674 )
[node name="Light2D34" parent="Lights" instance=ExtResource( 2 )]
position = Vector2( 1066.93, 170.071 )
[node name="LightOccluders" type="Node2D" parent="."]
[node name="LightOccluder2D" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 469.444, 367.746 )
occluder = SubResource( 1 )
[node name="LightOccluder2D2" type="LightOccluder2D" parent="."]
[node name="LightOccluder2D2" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 641.978, 284.308 )
occluder = SubResource( 1 )
[node name="LightOccluder2D3" type="LightOccluder2D" parent="."]
[node name="LightOccluder2D3" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 374.692, 76.4184 )
occluder = SubResource( 1 )
[node name="LightOccluder2D4" type="LightOccluder2D" parent="."]
[node name="LightOccluder2D4" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 876.738, 219.254 )
occluder = SubResource( 1 )
[node name="LightOccluder2D5" type="LightOccluder2D" parent="."]
[node name="LightOccluder2D5" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 906.436, 492.197 )
occluder = SubResource( 1 )
[node name="LightOccluder2D6" type="LightOccluder2D" parent="."]
[node name="LightOccluder2D6" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 906.436, 492.197 )
occluder = SubResource( 1 )
[node name="LightOccluder2D7" type="LightOccluder2D" parent="."]
[node name="LightOccluder2D7" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 216.3, 438.457 )
occluder = SubResource( 1 )
occluder = SubResource( 2 )
[node name="LightOccluder2D8" type="LightOccluder2D" parent="LightOccluders"]
position = Vector2( 496.042, 443.802 )
occluder = SubResource( 3 )

View File

@ -7,26 +7,106 @@
[node name="Lights3D" type="Spatial"]
[node name="Camera" type="Camera" parent="."]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2.87313 )
script = ExtResource( 1 )
[node name="Lights" type="Spatial" parent="."]
[node name="DirectionalLight" type="DirectionalLight" parent="."]
[node name="Lights1" type="Spatial" parent="Lights"]
[node name="DirectionalLight" type="DirectionalLight" parent="Lights/Lights1"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 10.521, 0 )
light_color = Color( 0.458824, 0.690196, 0.988235, 1 )
script = ExtResource( 2 )
[node name="OmniLight" type="OmniLight" parent="."]
[node name="OmniLight" type="OmniLight" parent="Lights/Lights1"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.0767, 0 )
light_color = Color( 0.556863, 0, 0, 1 )
script = ExtResource( 3 )
[node name="SpotLight" type="SpotLight" parent="."]
[node name="SpotLight" type="SpotLight" parent="Lights/Lights1"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4.09376 )
light_color = Color( 0.478431, 0.266667, 1, 1 )
spot_range = 8.6
script = ExtResource( 4 )
[node name="Lights2" type="Spatial" parent="Lights"]
transform = Transform( 0.506063, -0.520563, -0.687688, 0.308539, 0.853823, -0.419272, 0.805422, 0, 0.592702, 0, 0, 0 )
[node name="DirectionalLight" type="DirectionalLight" parent="Lights/Lights2"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 10.521, 0 )
light_color = Color( 0.458824, 0.690196, 0.988235, 1 )
script = ExtResource( 2 )
[node name="OmniLight" type="OmniLight" parent="Lights/Lights2"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.0767, 0 )
light_color = Color( 0.556863, 0, 0, 1 )
script = ExtResource( 3 )
[node name="SpotLight" type="SpotLight" parent="Lights/Lights2"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4.09376 )
light_color = Color( 0.478431, 0.266667, 1, 1 )
spot_range = 8.6
script = ExtResource( 4 )
[node name="Lights3" type="Spatial" parent="Lights"]
transform = Transform( 0.767362, -0.583576, 0.265697, 0.547886, 0.381458, -0.744521, 0.333133, 0.716888, 0.612449, 0, 0, 0 )
[node name="DirectionalLight" type="DirectionalLight" parent="Lights/Lights3"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 10.521, 0 )
light_color = Color( 0.458824, 0.690196, 0.988235, 1 )
script = ExtResource( 2 )
[node name="OmniLight" type="OmniLight" parent="Lights/Lights3"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.0767, 0 )
light_color = Color( 0.556863, 0, 0, 1 )
script = ExtResource( 3 )
[node name="SpotLight" type="SpotLight" parent="Lights/Lights3"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4.09376 )
light_color = Color( 0.478431, 0.266667, 1, 1 )
spot_range = 8.6
script = ExtResource( 4 )
[node name="Lights4" type="Spatial" parent="Lights"]
transform = Transform( -0.0303629, 0.898468, 0.437989, 0.547886, 0.381458, -0.744521, -0.836002, 0.217362, -0.50384, 0, 2.70549, 0 )
[node name="DirectionalLight" type="DirectionalLight" parent="Lights/Lights4"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 10.521, 0 )
light_color = Color( 0.458824, 0.690196, 0.988235, 1 )
script = ExtResource( 2 )
[node name="OmniLight" type="OmniLight" parent="Lights/Lights4"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.0767, 0 )
light_color = Color( 0.556863, 0, 0, 1 )
script = ExtResource( 3 )
[node name="SpotLight" type="SpotLight" parent="Lights/Lights4"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4.09376 )
light_color = Color( 0.478431, 0.266667, 1, 1 )
spot_range = 8.6
script = ExtResource( 4 )
[node name="Lights5" type="Spatial" parent="Lights"]
transform = Transform( -0.0303629, 0.898468, 0.437989, 0.547886, 0.381458, -0.744521, -0.836002, 0.217362, -0.50384, 0, 2.70549, 6.00353 )
[node name="DirectionalLight" type="DirectionalLight" parent="Lights/Lights5"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 10.521, 0 )
light_color = Color( 0.458824, 0.690196, 0.988235, 1 )
script = ExtResource( 2 )
[node name="OmniLight" type="OmniLight" parent="Lights/Lights5"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 5.0767, 0 )
light_color = Color( 0.556863, 0, 0, 1 )
script = ExtResource( 3 )
[node name="SpotLight" type="SpotLight" parent="Lights/Lights5"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 4.09376 )
light_color = Color( 0.478431, 0.266667, 1, 1 )
spot_range = 8.6
script = ExtResource( 4 )
[node name="Camera" type="Camera" parent="."]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 2.87313 )
script = ExtResource( 1 )
[node name="Boxes" type="Spatial" parent="."]
[node name="CSGBox" type="CSGBox" parent="Boxes"]
@ -45,3 +125,43 @@ transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.699736, 0.150547, -0.302456
width = 0.342
height = 0.521
depth = 0.394
[node name="Boxes2" type="Spatial" parent="."]
transform = Transform( 0.675732, 0, 0.737148, 0, 1, 0, -0.737148, 0, 0.675732, 0, 0, 0 )
[node name="CSGBox" type="CSGBox" parent="Boxes2"]
width = 0.782
height = 1.07
depth = 1.12259
[node name="CSGBox2" type="CSGBox" parent="Boxes2"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.437537, 0.150547, -0.302456 )
width = 0.782
height = 1.583
depth = 0.394
[node name="CSGBox3" type="CSGBox" parent="Boxes2"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.699736, 0.150547, -0.302456 )
width = 0.342
height = 0.521
depth = 0.394
[node name="Boxes3" type="Spatial" parent="."]
transform = Transform( 0.675732, 0, 0.737148, 0, 1, 0, -0.737148, 0, 0.675732, -1.59745, -2.38419e-07, -0.843414 )
[node name="CSGBox" type="CSGBox" parent="Boxes3"]
width = 0.782
height = 1.07
depth = 1.12259
[node name="CSGBox2" type="CSGBox" parent="Boxes3"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, -0.437537, 0.150547, -0.302456 )
width = 0.782
height = 1.583
depth = 0.394
[node name="CSGBox3" type="CSGBox" parent="Boxes3"]
transform = Transform( 1, 0, 0, 0, 1, 0, 0, 0, 1, 0.699736, 0.150547, -0.302456 )
width = 0.342
height = 0.521
depth = 0.394

32
Start.gd Normal file
View File

@ -0,0 +1,32 @@
extends Control
var current_scene : int = -1
var time_to_switch : float
const NUMBER_OF_INSTANCES : int = 1 # Use more than 1 to stress test, 1 should be optimal for casual CI
func _ready():
time_to_switch = Autoload.time_for_each_step
print("Starting with scene(s):")
for path in Autoload.all_in_one:
var scene : Node = load(path).instance()
add_child(scene)
print(" - " + path)
func _process(delta):
time_to_switch -= delta
if time_to_switch <= 0:
time_to_switch = Autoload.time_for_each_step
if current_scene < Autoload.alone_steps.size() - 1:
current_scene += 1
for child in get_children():
child.queue_free()
print("Changed scene to " + Autoload.alone_steps[current_scene])
for _i in range(NUMBER_OF_INSTANCES):
var scene : Node = load(Autoload.alone_steps[current_scene]).instance()
add_child(scene)

11
Start.tscn Normal file
View File

@ -0,0 +1,11 @@
[gd_scene load_steps=2 format=2]
[ext_resource path="res://Start.gd" type="Script" id=1]
[node name="Start" type="Control"]
anchor_right = 1.0
anchor_bottom = 1.0
script = ExtResource( 1 )
__meta__ = {
"_edit_use_anchors_": false
}

View File

@ -12,7 +12,7 @@ _global_script_classes=[ {
"base": "Node2D",
"class": "Operators",
"language": "GDScript",
"path": "res://MainScenes/Operators.gd"
"path": "res://AIO/Operators/Operators.gd"
} ]
_global_script_class_icons={
"Operators": ""
@ -20,7 +20,7 @@ _global_script_class_icons={
[application]
run/main_scene="res://All.tscn"
run/main_scene="res://Start.tscn"
config/icon="res://icon.png"
[autoload]