Updated the engine again, to get the new improvements. Also fixed performance issue.

This commit is contained in:
Relintai 2023-01-13 23:40:24 +01:00
parent 98e4718c98
commit 8f74ecb974
3 changed files with 7 additions and 5 deletions

2
HEADS
View File

@ -1 +1 @@
{"engine": {"3.2": "94a0fc47f7b4e90f8973f9adbfd3312579ed2825", "master": "8c73e813134001e575b6f59e3b0100471c007410", "3.x": "c4864a0e5f73a375259503ea1485794a6aad6df7"}, "world_generator": {"master": "260c430f11b0b591eaf4714516419aa327d2842c"}, "entity_spell_system": {"master": "3536f01bacf5f54cefb32b768cd020a1f94d0ade"}, "ui_extensions": {"master": "80a3b96fc56991a0f88a1d441ed1e3cebaf3307a"}, "voxelman": {"master": "65485930a20f65844d496b4ba47dec5b6ed70b91"}, "texture_packer": {"master": "ae4d222fbaade063ed6f0bc9f3aaa53df68a7fed"}, "fastnoise": {"master": "46bb1f610bfb7171613b5c708d312bcf94e89356"}, "mesh_data_resource": {"master": "a062d871d49d954c5466b9de54b4075cb61cbef4"}, "procedural_animations": {"master": "f8aae42bf06b3936cc6bd24cb18e1c3ec9f78f4f"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "983090d21a08ebed30a5ce06681269819ab12e48"}, "mesh_utils": {"master": "b52a261c31f04fad624e5cfbcdcc4a45d61136da"}, "broken_seals_module": {"master": "52c5a81350db1c29d375c63d95010260911ec034"}, "thread_pool": {"master": "0917511d04bb1aa308385b63ec88d3c182990628"}, "terraman": {"master": "c72d8fc03295588fc18c5168ce351bd0c321ec5f"}, "pandemonium_engine": {"master": "56296172cc6e387bf1d49ae9cf07fc596603a531"}} {"engine": {"3.2": "94a0fc47f7b4e90f8973f9adbfd3312579ed2825", "master": "8c73e813134001e575b6f59e3b0100471c007410", "3.x": "c4864a0e5f73a375259503ea1485794a6aad6df7"}, "world_generator": {"master": "260c430f11b0b591eaf4714516419aa327d2842c"}, "entity_spell_system": {"master": "3536f01bacf5f54cefb32b768cd020a1f94d0ade"}, "ui_extensions": {"master": "80a3b96fc56991a0f88a1d441ed1e3cebaf3307a"}, "voxelman": {"master": "65485930a20f65844d496b4ba47dec5b6ed70b91"}, "texture_packer": {"master": "ae4d222fbaade063ed6f0bc9f3aaa53df68a7fed"}, "fastnoise": {"master": "46bb1f610bfb7171613b5c708d312bcf94e89356"}, "mesh_data_resource": {"master": "a062d871d49d954c5466b9de54b4075cb61cbef4"}, "procedural_animations": {"master": "f8aae42bf06b3936cc6bd24cb18e1c3ec9f78f4f"}, "ess_data": {"master": "3bd637fdd3304b64a18287a49a6b7387acf2f5de"}, "props": {"master": "983090d21a08ebed30a5ce06681269819ab12e48"}, "mesh_utils": {"master": "b52a261c31f04fad624e5cfbcdcc4a45d61136da"}, "broken_seals_module": {"master": "52c5a81350db1c29d375c63d95010260911ec034"}, "thread_pool": {"master": "0917511d04bb1aa308385b63ec88d3c182990628"}, "terraman": {"master": "c72d8fc03295588fc18c5168ce351bd0c321ec5f"}, "pandemonium_engine": {"master": "36477a1a73128284db82b242d75df95a38a0c8e9"}}

View File

@ -19,7 +19,7 @@ func _ready() -> void:
], ],
true true
) )
follow.agent = agent follow.agent = agent
follow.path = path follow.path = path
follow.agent = agent follow.agent = agent
@ -50,8 +50,9 @@ func _physics_process(delta: float) -> void:
func _on_Drawer_path_established(points: Array) -> void: func _on_Drawer_path_established(points: Array) -> void:
var positions := PoolVector3Array() var positions : PoolVector3Array = PoolVector3Array()
for p in points: for p in points:
positions.append(Vector3(p.x, p.y, 0)) positions.append(Vector3(p.x, p.y, 0))
path.create_path(positions) path.create_path(positions)
_valid = true _valid = true

View File

@ -22,6 +22,7 @@ func _init() -> void:
# @tags - virtual # @tags - virtual
func _find_neighbors(callback : FuncRef) -> int: func _find_neighbors(callback : FuncRef) -> int:
var agent_count : int = agents.size() var agent_count : int = agents.size()
var lagents : Array = get_agents()
var neighbor_count : int = 0 var neighbor_count : int = 0
var current_frame : int var current_frame : int
@ -37,7 +38,7 @@ func _find_neighbors(callback : FuncRef) -> int:
var owner_position : Vector3 = agent.position var owner_position : Vector3 = agent.position
for i in range(agent_count): for i in range(agent_count):
var current_agent : GSAISteeringAgent = agents[i] as GSAISteeringAgent var current_agent : GSAISteeringAgent = lagents[i] as GSAISteeringAgent
if current_agent != agent: if current_agent != agent:
var distance_squared : float = owner_position.distance_squared_to(current_agent.position) var distance_squared : float = owner_position.distance_squared_to(current_agent.position)
@ -53,7 +54,7 @@ func _find_neighbors(callback : FuncRef) -> int:
current_agent.is_tagged = false current_agent.is_tagged = false
else: else:
for i in range(agent_count): for i in range(agent_count):
var current_agent : GSAISteeringAgent = agents[i] as GSAISteeringAgent var current_agent : GSAISteeringAgent = lagents[i] as GSAISteeringAgent
if current_agent != agent and current_agent.is_tagged: if current_agent != agent and current_agent.is_tagged:
if callback.call_func(current_agent): if callback.call_func(current_agent):