Hey so this nate and this is my first post. im working on a space game and want to create a skybox of stars (space) I been digging around here and found out that I need dds cubemap. Well I have successfully created the Cubemap and import in unreal. Then I created a material that is 2 sided unlit with emmision or what ever its called light to a textturecube that’s all nice and looks good but then problem I have is… the stars are blurry and big and just look horrible what am I doing wrong or is there a better way now ?; I tried all the fourms and found nothingn
When they are too big, you can scale them down with a texture coordinate in your material -> but then the texture will be tiled
I am having a similar issue. I followed the unreal tutorial on youtube and got a very low resolution looking setup. (despite the dds texture being 72mb and 12288x2048)
This seems like there has to be done that I am doing incorrectly. Is there any guidance on the best practices? I have linked my material file as well as my blueprint
I can show you my setup for the stars in my project. It is simple and much like yours, except I have added a constant to control contrast and another one to control the emissiveness of the map; and one for desaturation, but that could be done prior to importing the texture, too. My texture file is 4x2 k and the resolution is still decent. The reason the stars are blurred on the image have to do with the post-process volume.
If you have any problems with this setup, let me know!
When you say 4k x 2k you mean 4000x2000? I spent 3 hours loading a 300mb file last night and the fidelity of the texture was considerably lower than your screenshot. So, obviously you are doing something I am not and it is killing me. I have a different method for doing it that I have coded before in my own engine but I really wanted to avoid having to custom code stuff this early in the project. So… long story short I would love your help. I will private message you and we can try to set something up to get it working?
Hmm, yes it’s 4096x2048 Pixels. I sharpen my images (file/sharpen) and export them as *.tga, same as most people do. You should also check that your textures are exported in 8bit, even though for the color corrections and other stuff done in Photoshop, I work in 16bit. The emissive constant node is perhaps the most important, as I can influence the amount of stars and their radiance through the constant. If I crank it all the way up to e.g. 100, the entire sky is white, because there are so many stars that just don’t have enough light on their own to show.
Maybe your texture is kinda too large for Unreal to handle properly. It is also not in a 2:1 format, which means it can’t be streamed. You should get used to cropping pictures to dimensions of 1024x1024, or 2048x1024 (power of two). Another thing I could think about is scale. Depending on the scale of your models and sky, certain elements may be displayed wrong. You should try to keep a 1:1 scale between real life, Maya and Unreal. Otherwise, if you e.g. model things 300% too large, imagine how light falling through a glass has to travel 300x the way it would in real life. And that can quite influence the results in a bad way.
All good points, but the tutorial for skybox’s says to make them a DDS file and to do so with the following format:
Unless I read it wrong, there is no way you can have a 2:1 with that…
POST THIS LINK WAS TAKEN FROM:
The question is if you actually need to create that cubemap. I used reflection actors and the Syklight, which generate their own cubemap when you hit the “update captures” button. Unless you want to create a procedural kind of sky, which wasn’t what I had in mind when I worked on my scene, you can simply go with a textured sphere. As you see, Unreal captures light and reflections accurately and nicely. Stitched Cubemaps from Photoshop is something I would use when the situation demands it. As usually, the credo for working efficiently with any game engine should be: try the simple way first, if it fails, try the difficult solution. Seems like you started the other way around.
Also, the material needn’t be two-sided. Just invert the normals on the sphere mesh.
Well… i googled it and that’s what I got. However, I am open to other methods and “best practices” so I am all ears. Lets say I model a sphere and invert the normals, I import that sphere into my library… how do I now make that the skybox? What steps do I need to take to ensure those things (reflection actors and skylight) are in place? I did notice that the planet is already pushing out lighting; which was rather cool so that is a certain + for the engine. Please keep in mind that I have clocked less than 10 hours with this engine so far. I am still learning what should and shouldnt be done. I appreciate your help and understanding while I attempt to grasps these concepts.
I was having the same issue as riuthamus with poor resolution skybox after importing. The fix was to set Mip Gen Settings to NoMipmaps.
I found the answer here:
And watch this tutorial on youtube: Unreal Engine 4 Tutorial: Skybox Creation !OUTDATED! - YouTube
or at least get AMD cubemap tools and Spacescape – Alex Peterson
Then NoMipmas when importing.
This is result of me watching tut and playing with spacescape:
Even better approach to space skybox is making it procedural:
- make star texture with 4 RGBA layers as masks, mix them all with different UV sizes, then apply slight color and brightness aberrations.
- add some layer of transparent particle effect to simulate nebulas
- add similar sprites to simulate milky way
- all above in blueprint which uses streamed random, then rotate that BP slightly to simulate earts orbic inclination.
I plan to do all that on next iteration of my sky.
Regarding your first BluePrint, do not multiply your texture by 10 when plugging into Emmisive Color. Change it to 1 or some other float value between 0 and 1. It completely fixed my problem.
Go into the qubemaps settings (double click in content browser) set Mip Gen Settings to NoMipmaps. Its under Level of detail. Solved the Problem for me.