Jump to content

Josh

Staff
  • Posts

    23,315
  • Joined

  • Last visited

Everything posted by Josh

  1. Updated 1.0.1 LoadPixmap function now works with Leadwerks .tex files
  2. Okay, it will probably take a while for AMD to look at this. If I can avoid buying another expensive GPU I would like to. Please hold tight and trust me that this will get fixed before your game is finished.
  3. There aren’t really versions other than the branch that is selected. I just upload a file on the server and the client detects that a new file is available.
  4. Josh

    Atlas

    I don’t plan to because it takes a lot of time to set up. I’d rather just focus on unity since it has the most users.
  5. Josh

    Atlas

    I liked the way they show stats on their main page so much I took some inspiration for the main page here: https://www.ultraengine.com/
  6. It's got to be an error in the shader because all sides of the cubemap texture look fine:
  7. I can produce the same effect by tilting a block:
  8. It looks like this if I turn the roughness all the way down. Maybe there is an issue with the cubemap mipmaps loaded from the scene file...
  9. I thought that was just the environment map reflection. It behaves like a cubemap reflection, moving with the camera but not changing when the camera rotates.
  10. I think when I was previously testing it I had already set the material alpha. I also did some final adjustments to transparency, but the way it is working now appears to be correct. Regarding the ball launcher model, I don't know what is wrong with the image above. How is it supposed to be different from that?
  11. Loading a tex file as a pixmap and saving as another format should work fine. Ultra does not save .tex files, but I figured people would probably want to convert their tex files into DDS or another format.
  12. It looks like these materials have a material color of (255,255,255,255) and the texture has no alpha channel, or a solid opaque alpha channel, so there is no transparency even if the material is set to display transparency. If I set the alpha channel of the material color to 128 the material appears transparent in Ultra:
  13. I am not sure what I am looking for or what appears wrong: #include "UltraEngine.h" #include "ComponentSystem.h" using namespace UltraEngine; int main(int argc, const char* argv[]) { //Get the display list auto displays = GetDisplays(); //Create a window auto window = CreateWindow("Terrain Experiment", 0, 0, 1280, 720, displays[0], WINDOW_CENTER | WINDOW_TITLEBAR); //Create a world auto world = CreateWorld(); world->SetAmbientLight(0); //Create a framebuffer auto framebuffer = CreateFramebuffer(window); //Create a camera auto camera = CreateCamera(world); camera->SetClearColor(0.125); camera->SetFov(70); auto scene = LoadScene(world, "Maps/lvl7.map"); //Camera controls auto actor = CreateActor(camera); actor->AddComponent<CameraControls>(); //Main loop while (window->Closed() == false and window->KeyDown(KEY_ESCAPE) == false) { if (window->KeyHit(KEY_SPACE)) { scene = LoadScene(world, "Maps/lvl7.map"); } world->Update(); world->Render(framebuffer); } return 0; }
  14. Yes, just call LoadPixmap and then use the Save() method to save in PNG. You'll need to load the FreeImage texture loader plugin for saving PNG files.
  15. Josh

    Shader woes

    You have a big talent for "polishing" the appearance of a game and giving it a visual theme.
  16. It doesn't look like they are related, but anything is possible.
  17. The fix is up now. It's just a modified shader, so you will need to sync your project files to get it.
  18. I'm pretty sure I understand now why this is happening but I need to think about the most optimal solution...
  19. Okay, I have discovered something...stay tuned...
  20. No, but someone else brought up an issue that may be related.
  21. In fact you don't even need textures, and just two materials will do it: #include "UltraEngine.h" #include "ComponentSystem.h" #include "PerlinNoise.hpp" using namespace UltraEngine; int main(int argc, const char* argv[]) { //Get the display list auto displays = GetDisplays(); //Create a window auto window = CreateWindow("Terrain Experiment", 0, 0, 1280, 720, displays[0], WINDOW_CENTER | WINDOW_TITLEBAR); //Create a world auto world = CreateWorld(); world->SetAmbientLight(0); //Create a framebuffer auto framebuffer = CreateFramebuffer(window); //Create a camera auto camera = CreateCamera(world); camera->SetFov(70); camera->SetPosition(0, 50, 0); camera->SetRotation(45, 0, 0); camera->SetClearColor(0.125); //Sunlight auto light = CreateDirectionalLight(world); light->SetRotation(45, 35, 0); light->SetColor(1); //Set environment maps const WString remotepath = "https://raw.githubusercontent.com/UltraEngine/Documentation/master/Assets"; auto specmap = LoadTexture(remotepath + "/Materials/Environment/Storm/specular.dds"); auto diffmap = LoadTexture(remotepath + "/Materials/Environment/Storm/diffuse.dds"); world->SetEnvironmentMap(specmap, ENVIRONMENTMAP_BACKGROUND); world->SetEnvironmentMap(specmap, ENVIRONMENTMAP_SPECULAR); world->SetEnvironmentMap(diffmap, ENVIRONMENTMAP_DIFFUSE); //Create terrain from noise map auto terrain = CreateTerrain(world, 256); terrain->SetScale(1, 100, 1); const siv::PerlinNoise::seed_type seed = 656621u; const siv::PerlinNoise perlin{ seed }; //Create base material auto ground = CreateMaterial(); ground->SetColor(0.25, 1, 0.25, 1); terrain->SetMaterial(ground); auto grass = CreateMaterial(); grass->SetColor(1, 0.25, 0.25, 1); for (int x = 0; x < terrain->resolution.x; ++x) { for (int y = 0; y < terrain->resolution.y; ++y) { // Sample noise function at this point of the terrain const double noise = perlin.normalizedOctave2D((x * 0.01), (y * 0.01), 5); terrain->SetElevation(x, y, noise * 100); float slope = abs(terrain->GetSlope(x, y)); if (slope < 5) { terrain->SetMaterial(x, y, grass, 1.0f); } } } //Camera controls auto actor = CreateActor(camera); actor->AddComponent<CameraControls>(); //Main loop while (window->Closed() == false and window->KeyDown(KEY_ESCAPE) == false) { world->Update(); world->Render(framebuffer); } return 0; }
×
×
  • Create New...