Asset Generation: Campfire, Tent, Sleeping Bag, UI Elements (Health, Inventory, Dialog). Cleaned GrassScene.

This commit is contained in:
2026-01-28 07:45:24 +01:00
parent b686be33ab
commit 94565adffc
69 changed files with 5208 additions and 122 deletions

47
scripts/make_tileset.py Normal file
View File

@@ -0,0 +1,47 @@
import cv2
import numpy as np
import os
def create_tileset():
# Paths
grass_path = 'main/assets/tla_trava_tekstura.png'
water_path = 'main/assets/stream_water.png'
output_path = 'main/assets/ground_tileset.png'
# Load images
grass = cv2.imread(grass_path, cv2.IMREAD_UNCHANGED)
water = cv2.imread(water_path, cv2.IMREAD_UNCHANGED)
if grass is None:
print(f"Error: Could not load {grass_path}")
return
if water is None:
print(f"Error: Could not load {water_path}")
return
# Check dimensions
# Assuming tiles are 256x256 based on previous instructions
# We will resize if necessary but ideally they match
print(f"Grass shape: {grass.shape}")
print(f"Water shape: {water.shape}")
# Ensure 4 channels
if grass.shape[2] == 3:
grass = cv2.cvtColor(grass, cv2.COLOR_BGR2BGRA)
if water.shape[2] == 3:
water = cv2.cvtColor(water, cv2.COLOR_BGR2BGRA)
# Force resize to 256x256 if not (just to be safe for the tilesource)
grass = cv2.resize(grass, (256, 256))
water = cv2.resize(water, (256, 256))
# Combine horizontally (Tile 1, Tile 2)
# Tilesource indexing usually starts at 1
# So Tile 1 = Grass, Tile 2 = Water
tileset = np.hstack((grass, water))
cv2.imwrite(output_path, tileset)
print(f"Created tileset at {output_path} with shape {tileset.shape}")
if __name__ == "__main__":
create_tileset()