From 35ccb134b533a86a94c70350dc976c944bbe1f20 Mon Sep 17 00:00:00 2001 From: KP Date: Wed, 31 Jul 2024 00:58:55 -0500 Subject: [PATCH] UV adjustment feature --- Data/sandbox-log.txt | 1104 +++++++++++++++++++++++++++------------ KP3Dii/src/KP3D_Map.cpp | 6 +- Sandbox/src/Editor.cpp | 96 +++- Sandbox/src/Editor.h | 4 + 4 files changed, 856 insertions(+), 354 deletions(-) diff --git a/Data/sandbox-log.txt b/Data/sandbox-log.txt index 71ee7fc..8a7bf28 100644 --- a/Data/sandbox-log.txt +++ b/Data/sandbox-log.txt @@ -1,329 +1,787 @@ -[00:30:55 AM] Info: Starting... +[00:57:22 AM] Info: Starting... KP3D version 2 =============================== Copyright (C) kpworld.xyz 2018-2024 Contact me! @kp_cftsz -[00:30:55 AM] Info: Initializing SDL -[00:30:55 AM] Info: Initializing OpenGL -[00:30:55 AM] Info: OpenGL version: 4.6.0 NVIDIA 536.23 -[00:30:55 AM] Info: Initializing GLEW -[00:30:55 AM] Info: Initializing SDL_mixer -[00:30:55 AM] Info: Reticulating splines... -[00:30:55 AM] Info: Ready! -[00:30:55 AM] Info: Loading material resource: block.png -[00:30:55 AM] Info: Found normal map texture: materials/block_n.png -[00:30:55 AM] Info: Loading material resource: FLAT5_7.png -[00:30:55 AM] Info: Found normal map texture: materials/FLAT5_7_n.png -[00:30:55 AM] Info: Loading material resource: floor0.png -[00:30:55 AM] Info: Found normal map texture: materials/floor0_n.png -[00:30:55 AM] Info: Loading material resource: floor1.png -[00:30:55 AM] Info: Found normal map texture: materials/floor1_n.png -[00:30:55 AM] Info: Loading material resource: GRASS2.png -[00:30:55 AM] Info: Found normal map texture: materials/GRASS2_n.png -[00:30:55 AM] Info: Map init -[00:30:55 AM] Info: Finalized mesh with 49 batches -[00:31:02 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:05 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:06 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:07 AM] Info: Finalized mesh with 60 batches -[00:31:08 AM] Info: Finalized mesh with 60 batches -[00:31:08 AM] Info: Finalized mesh with 60 batches -[00:31:08 AM] Info: Finalized mesh with 60 batches -[00:31:10 AM] Info: Finalized mesh with 59 batches -[00:31:11 AM] Info: Finalized mesh with 58 batches -[00:31:12 AM] Info: Finalized mesh with 57 batches -[00:31:14 AM] Info: Finalized mesh with 58 batches -[00:31:18 AM] Info: Finalized mesh with 59 batches -[00:31:19 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:22 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:24 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:25 AM] Info: Finalized mesh with 60 batches -[00:31:26 AM] Info: Finalized mesh with 60 batches -[00:31:26 AM] Info: Finalized mesh with 60 batches -[00:31:26 AM] Info: Finalized mesh with 60 batches -[00:31:26 AM] Info: Finalized mesh with 60 batches -[00:31:26 AM] Info: Finalized mesh with 60 batches -[00:31:26 AM] Info: Finalized mesh with 60 batches -[00:31:26 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:27 AM] Info: Finalized mesh with 60 batches -[00:31:29 AM] Info: Finalized mesh with 59 batches +[00:57:22 AM] Info: Initializing SDL +[00:57:23 AM] Info: Initializing OpenGL +[00:57:23 AM] Info: OpenGL version: 4.6.0 NVIDIA 536.23 +[00:57:23 AM] Info: Initializing GLEW +[00:57:23 AM] Info: Initializing SDL_mixer +[00:57:23 AM] Info: Reticulating splines... +[00:57:23 AM] Info: Ready! +[00:57:23 AM] Info: Loading material resource: block.png +[00:57:23 AM] Info: Found normal map texture: materials/block_n.png +[00:57:23 AM] Info: Loading material resource: FLAT5_7.png +[00:57:23 AM] Info: Found normal map texture: materials/FLAT5_7_n.png +[00:57:23 AM] Info: Loading material resource: floor0.png +[00:57:23 AM] Info: Found normal map texture: materials/floor0_n.png +[00:57:23 AM] Info: Loading material resource: floor1.png +[00:57:23 AM] Info: Found normal map texture: materials/floor1_n.png +[00:57:23 AM] Info: Loading material resource: GRASS2.png +[00:57:23 AM] Info: Found normal map texture: materials/GRASS2_n.png +[00:57:23 AM] Info: Map init +[00:57:23 AM] Info: Finalized mesh with 49 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:27 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:28 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:29 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:30 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:31 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:32 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:33 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:34 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:35 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:36 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:37 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:38 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:39 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:40 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:41 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:42 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:43 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:44 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:45 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:46 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:47 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:48 AM] Info: Finalized mesh with 48 batches +[00:57:59 AM] Info: Finalized mesh with 48 batches +[00:58:01 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:09 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:10 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:11 AM] Info: Finalized mesh with 48 batches +[00:58:12 AM] Info: Finalized mesh with 48 batches +[00:58:12 AM] Info: Finalized mesh with 48 batches +[00:58:12 AM] Info: Finalized mesh with 48 batches +[00:58:12 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:14 AM] Info: Finalized mesh with 48 batches +[00:58:15 AM] Info: Finalized mesh with 48 batches +[00:58:29 AM] Info: Finalized mesh with 48 batches +[00:58:29 AM] Info: Finalized mesh with 48 batches +[00:58:29 AM] Info: Finalized mesh with 48 batches +[00:58:29 AM] Info: Finalized mesh with 48 batches +[00:58:29 AM] Info: Finalized mesh with 48 batches +[00:58:29 AM] Info: Finalized mesh with 48 batches +[00:58:29 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:30 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:34 AM] Info: Finalized mesh with 48 batches +[00:58:35 AM] Info: Finalized mesh with 48 batches diff --git a/KP3Dii/src/KP3D_Map.cpp b/KP3Dii/src/KP3D_Map.cpp index daaab7d..6eaf751 100644 --- a/KP3Dii/src/KP3D_Map.cpp +++ b/KP3Dii/src/KP3D_Map.cpp @@ -304,9 +304,9 @@ void Map::BuildQuad(Sector& sector, Wall& wall, Flat& flat_topr, Flat& flat_bott // Fix up the UVs so they keep the right scale float tw = texture_scale / wall.materials[mat_type]->textures[MAT_TEX_DIFFUSE].GetWidth(); float th = texture_scale / wall.materials[mat_type]->textures[MAT_TEX_DIFFUSE].GetHeight(); - Vertex3D vtxa = Vertex3D(fva, Vec2(au * tw, av * th)); - Vertex3D vtxb = Vertex3D(fvb, Vec2(bu * tw, bv * th)); - Vertex3D vtxc = Vertex3D(fvc, Vec2(cu * tw, cv * th)); + Vertex3D vtxa = Vertex3D(fva, Vec2(au * tw + uv_offset.x/128.0f, av * th + uv_offset.y/128.0f)); + Vertex3D vtxb = Vertex3D(fvb, Vec2(bu * tw + uv_offset.x/128.0f, bv * th + uv_offset.y/128.0f)); + Vertex3D vtxc = Vertex3D(fvc, Vec2(cu * tw + uv_offset.x/128.0f, cv * th + uv_offset.y/128.0f)); BatchSectorInfo info = {BatchSectorInfo::BATCH_WALL, (MaterialType)(mat_type + 2), §or, nullptr, &wall}; m_mesh.AddBatch(&wall.materials[mat_type]->textures[MAT_TEX_DIFFUSE], {vtxa, vtxb, vtxc}, flip, std::make_any(info), &wall.materials[mat_type]->textures[MAT_TEX_NORMAL]); } diff --git a/Sandbox/src/Editor.cpp b/Sandbox/src/Editor.cpp index 8055192..5331c87 100644 --- a/Sandbox/src/Editor.cpp +++ b/Sandbox/src/Editor.cpp @@ -230,6 +230,39 @@ void Editor::UpdateModeNormal() { using namespace kp3d; + struct Target + { + Vec3 position; + float distance; + RenderBatch3D* b; + }; + std::vector targets; + for (RenderBatch3D& b : sandbox->map.GetMeshRef().GetBatchesRef()) + { + for (size_t i = 0; i < b.vertex_data.size(); i += 3) + { + Vec3 pos; + Triangle tri = { b.vertex_data[i].position, b.vertex_data[i + 1].position, b.vertex_data[i + 2].position }; + auto ray = GetRayFromCamera(sandbox->camera); + bool raycast = RayIntersectsTriangle(ray[0], ray[1], &tri, pos); + if (raycast) + { + float dist = sqrtf( + pow(pos.x - sandbox->camera.position.x, 2) + + pow(pos.y - sandbox->camera.position.y, 2) + + pow(pos.z - sandbox->camera.position.z, 2) + ); + targets.push_back({ pos, dist, &b }); + } + } + } + if (!targets.empty()) + { + std::sort(targets.begin(), targets.end(), [&](const Target& a, const Target& b) { return a.distance > b.distance; }); + const Target& target = targets.back(); + ray_pos = target.position; + } + // Wall/flat selection if (sandbox->IsMouseButtonDown(kp3d::MOUSE_BUTTON_LEFT) && !editing_gizmo) { @@ -238,36 +271,12 @@ void Editor::UpdateModeNormal() { editor_hovered_batch.clear(); } - struct Target - { - Vec3 position; - float distance; - RenderBatch3D* b; - }; - std::vector targets; - for (RenderBatch3D& b : sandbox->map.GetMeshRef().GetBatchesRef()) - { - for (size_t i = 0; i < b.vertex_data.size(); i += 3) - { - Vec3 pos; - Triangle tri = { b.vertex_data[i].position, b.vertex_data[i + 1].position, b.vertex_data[i + 2].position }; - auto ray = GetRayFromCamera(sandbox->camera); - bool raycast = RayIntersectsTriangle(ray[0], ray[1], &tri, pos); - if (raycast) - { - float dist = sqrtf( - pow(pos.x - sandbox->camera.position.x, 2) + - pow(pos.y - sandbox->camera.position.y, 2) + - pow(pos.z - sandbox->camera.position.z, 2) - ); - targets.push_back({ pos, dist, &b }); - } - } - } if (!targets.empty()) { - std::sort(targets.begin(), targets.end(), [&](const Target& a, const Target& b) { return a.distance > b.distance; }); const Target& target = targets.back(); + //std::sort(targets.begin(), targets.end(), [&](const Target& a, const Target& b) { return a.distance > b.distance; }); + //const Target& target = targets.back(); + //ray_pos = target.position; if (editor_hovered_batch.empty()) { if (std::find(editor_hovered_batch.begin(), editor_hovered_batch.end(), target.b) == editor_hovered_batch.end()) @@ -414,11 +423,42 @@ void Editor::UpdateModeNormal() // UV adjust if (sandbox->IsMouseButtonDown(kp3d::MOUSE_BUTTON_MIDDLE)) { + if (!uv_adjusting) + { + old_ray_pos = ray_pos; + uv_adjusting = true; + } + try + { + const auto& info = std::any_cast(kp3d::editor_hovered_batch[0]->userdata); + if (info.wall) + { + Vec3 delta = ray_pos - old_ray_pos; + + Vec2 delta_proj = { + (delta.x - delta.z), + -delta.y + }; + + info.wall->uv_offset[info.mat_type - 2].x += delta_proj.x * 128.0f; + info.wall->uv_offset[info.mat_type - 2].y += delta_proj.y * 128.0f; + + if (Distance(ray_pos, old_ray_pos) > 1.0f/128.0f) + RebuildMap(); + + old_ray_pos = ray_pos; + } + } + catch (std::bad_any_cast& e) + { + KP3D_LOG_ERROR("Bad any cast: {}", e.what()); + kp3d::editor_hovered_batch.clear(); + } } else { - + uv_adjusting = false; } if (editing_gizmo) diff --git a/Sandbox/src/Editor.h b/Sandbox/src/Editor.h index 2bdd8bd..f3fbec8 100644 --- a/Sandbox/src/Editor.h +++ b/Sandbox/src/Editor.h @@ -75,4 +75,8 @@ private: WallUpdate wall_update; bool can_wall_update = false; + kp3d::Vec3 old_ray_pos; + kp3d::Vec3 ray_pos; + bool uv_adjusting = false; + };