Rejected: Using Deno to handle the conversion of GLB files to Godot Engine packed scenes
Metadata
- Status: rejected
- Deciders: V-Sekai
- Tags: V-Sekai, ChatGPT-4
Context and Problem Statement
V-Sekai currently has a limitation in converting 3D models from the GLB format to the Godot Engine packed scene format. This conversion process is essential for seamless integration of 3D assets into the V-Sekai platform.
Proposed Solution
Implement serverless edge functions using Deno to handle the conversion of GLB files to Godot Engine packed scenes and manage data storage and retrieval.
Implementation
- Wasm edge functions: Utilize WebAssembly (Wasm) to run the edge functions efficiently.
- Compute time estimation: Estimate the required compute time for the conversion process.
- Data storage: Set up a storage system for the converted Godot packed scenes.
- Table editing UI: Create a user interface for managing the stored Godot packed scenes.
- Edge Function use case: Implement the following serverless Deno functions:
glbToGodotPackedScene
: Convert a GLB file to a Godot packed scene and store it.insertGodotPackedScene
: Insert a Godot packed scene into the V-Sekai server.helloWorld
: Return a JSON object containing “Hello, World!” as a test function.
Positive Consequences
- Seamless integration of 3D assets into the V-Sekai platform.
- Improved performance and reduced latency due to edge computing.
- Scalable and maintainable architecture with serverless functions.
Negative Consequences
- Additional complexity in setting up and managing serverless functions.
- Potential increase in costs due to serverless architecture.
Option graveyard
Use the current process of editor upload.
If this enhancement will be used infrequently, can it be worked around with a few lines of script?
No, this enhancement is essential for the seamless integration of 3D assets into the V-Sekai platform and cannot be easily worked around with a simple script.
Is there a reason why this should be core and done by us?
Yes, this feature is crucial for the V-Sekai platform’s functionality and user experience. Implementing it as a core feature ensures that it is well-integrated, maintainable, and scalable.