Switch images to webp & avif for better load times
|
Before Width: | Height: | Size: 23 KiB |
BIN
content/post/butter-dejavu/butter-dragon-modelloading.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
|
Before Width: | Height: | Size: 410 B |
BIN
content/post/butter-dejavu/butter-smiley-projected.webp
Normal file
|
After Width: | Height: | Size: 154 B |
|
Before Width: | Height: | Size: 535 B |
BIN
content/post/butter-dejavu/butter-smiley-streched.webp
Normal file
|
After Width: | Height: | Size: 146 B |
|
Before Width: | Height: | Size: 23 KiB |
BIN
content/post/butter-dejavu/featured-image.webp
Normal file
|
After Width: | Height: | Size: 18 KiB |
@@ -5,7 +5,7 @@ lastmod: 2022-08-22T16:02:56-04:00
|
||||
draft: false
|
||||
|
||||
description: "I feel like I wrote this code before..."
|
||||
image: "featured-image.png"
|
||||
image: "featured-image.webp"
|
||||
|
||||
tags: ["Progress Updates"]
|
||||
categories: ["butterengine"]
|
||||
@@ -66,7 +66,7 @@ Derivatives were made when going through the tutorials but were ultimately remov
|
||||
## Textures
|
||||
Right now, only Albedo is being used and the Material class is nothing but a holder for SlickUtil Textures. I want the Material class to hold all of the textures without order and you leave it to modders to make their shaders and textures line up. I'm only using SlickUtil right now because of the ability to load Textures from class resources rather than the file path. But I'm ultimately going to replace it with my one Texture class because of the [model loader](#Model Loading) not using class resources. Supposedly we can load from resources, and call the function to load model from memory or textures from memory with STB, but I have no idea what the size of the buffers should be.
|
||||
|
||||

|
||||

|
||||
|
||||
## 3D Projection
|
||||
JOML is being used for math and matrix loading and what not but this may change (see [the physics section](#physics)). Once I did this, it kinda made me think about what next. I thought I should focus on an ECS system for holding positions, rotations, etc. which right now is the Entity class that should be derived from but will change (see [the ECS section](#ecs)). This was kind of the thing that spun off into the unproductive week. Although this was not easy at all because the shader was originally going from different matrices in the wrong order.
|
||||
@@ -90,7 +90,7 @@ void main() {
|
||||
|
||||
But here it is now working just right:
|
||||
|
||||

|
||||

|
||||
|
||||
## Mod Loading
|
||||
The Main class no longer holds any GLFW and is instead held in the Window class, similar to the Mesh class and BufferObjects. Mods right now hold a lot of control over what's happening. This is still subject to change because while this was going to be a render engine, it quickly became this bigger thing and the order of events right now is: Rendering (v0.1) -> ECS/Physics (v0.2) -> Audio/Sound (v0.3) -> Events/Mod Loading (v0.4). So we aren't even done with v0.1 and shouldn't worry about the specifics of this just yet. I just want to emphasize that this is a render engine before a game engine, no matter how much I want the latter.
|
||||
@@ -111,4 +111,4 @@ For ECS I'm gonna go with [Ashley](https://github.com/libgdx/ashley), a LibGDX s
|
||||
## Model Loading
|
||||
This is in no way finished as it is not grabbing all possible data right now, which is kind of driving me nuts but I'm gonna try to ignore it for now until the data being grabbed, like material data, can be used in engine. Here it is so far, using the smiley texture and the dragon model:
|
||||
|
||||

|
||||

|
||||