I am working on a VR app with Unity3d and I am making the scene rendering with Unity but I cannot achieve good image quality. Is it possible to import a full baked render from Maya, 3ds ( for example an .fbx ) with all the lightning and shading so that I can only work with Unity with the interactions ?
I need to get the highest image quality so I make it as realistic as possible.
Shaders will always be different, but in case your lighting conditions don't change, you can fully bake the result as albedo, and use unlit shader to just pass through the result. This will not work as expected if you want to move/rotate the resulting objects, however it might work for environments.
Have in mind that unlike max/maya, unity renders in realtime, in milliseconds per frame, not minutes per frame, so there are certain tradeoffs that are made to ensure speed, the reuslts will never be identical (as they are not identical between offline renderers).
Its probably best to just learn to use Unity shaders to its full, just as you had to learn max/maya.
you can bake lighting in unity3d too, which can give decent results
Related
I want to improve the graphic quality of the dynamically randomly generated house object.
Is there a real-time bake function provided by Unity? If that's not possible, is it possible to render just the scene from the camera? Like the way get images from blender rendering
Before-and-after example assuming rendering
You need to switch to High Definition Render Pipline. Then you will need to set up lights and all other settings. You can use Unity examples to get you started.
I've decided to use Minecraft like characters in my small game since I do not know how to make 3d models (nor I want to learn how to do such thing in the near future).
However the task now seem a little harder than expected:
I've tried looking in the asset store for prefabs to use but without success.
So, I've decided to try and make a model on blender(by not knowing a thing about non parametric 3d modeling, my knowledge of blender is extremely limited) and import it into my unity game.
And surprisingly, I managed to create the model using McPrep, export it and import it into unity maintaining objects that drive the bones (the output is a bit messy but I think I can manage to clean it up a little).
However the imported version does not have any skin and appears in a gray shade.
Turns out that the output does not keep materials/textures with it!
I've tried getting the texture used by blender and it returns the same skin I fed into mcprep so, by using the same skin, I've tried creating a material with it by getting the .png and using it as texture in a unlit texture material.
However, the result is a bit messy as shown here (left is Blender, right is Unity):
How may I make the texture on unity3d be better and right? (I've heard there is a way using a C# script but I really don't know what it is nor how to do it)
EDIT:
Thanks for the answers before, I did set the filter to point obtaining the texture to be a bit better. However the part that should be transparent is displayed in black on top of the other part (I think).
The image on the right is only filter point and the one on the left is point + alpha is transparency and the transparent shader using unlit transparent
ANSWER FOUND:
As Bart said, make sure the textures' Filter Mode is set to Point, but additionally:
Minecraft player characters are made of 2 layers, the second layer usually has lots of transparency and is used for clothing or other relief detail. So you need to use a transparency-capable shader on your material in Unity.
You're running into a filtering issue. In your case you want no filtering to happen. So select your texture, and in the inspector change the import settings so that your "Filter Mode" is set to "Point". In this case it will do no filtering of the input and your large pixels should appear sharp as you want.
I am working on a mobile game in Unity, and we've reached the optimisation stage of development. We've been using realtime AA from the Post-Processing Stack, but I would like to switch to baked AA, because nothing except for the player moves in our game.
Here's the problem: we only use unlit materials in our game. This wasn't a problem for the Post-Processing Stack, but it does prevent baked ambient occlusion from being visible in-game. I've considered two possibilities.
Possibility 1: We use a lit shader, but disable all realtime lights and simply setup the baked lighting so it appears unlit. The main problem with this solution is that I believe this isn't as performant as we'd like.
Possibility 2: We edit our custom unlit shaders to include unity's baked lighting layers. I believe this is the best option, as it would maintain the performance of our custom shaders. The problem with this is that I can't find any documentation on what needs to be changed to make this happen.
So, my question is: which possibility is best? If it's possibility 1, will this severly hurt our performance? If it's possibilty 2, what do I need to do to make this work? Thank you for any help you can provide.
I'm working with Unity and C# making a platform game, i mostly used cubes/boxes of different scales to build the level and now i have to apply the texture, i played with the tiling but the texture obviously stretches to apply on different objects, making a different material for each object is too much, I heard that I should use shaders but I've never worked with them. Can anyone help me write a shader that can modify the tiling based on the size of the object? Thanks to everyone.
I have a model in Blender with perfectly highres textures. I export it as fbx, import it to Unity, import textures to unity at full res (and no mipmapping, point, no compression, etc) and still the texture looks extremely blurred. Any hints why that might be?
Here's a comparison of the face in Blender vs Unity.
Here are the relevant, currently applied settings. I've tried many, but imho those (extreme) settings should make 100% sure that the texture is on maximum quality.
EDIT: Interestingly, a close-up image reveals a seemingly high detail on the clothes below the face, yet not on the face itself. Maybe that's just my imagination. Have a closer look here
Thanks for some help!
It's really hard to tell in the comparison shot you linked (as that itself is so low resolution), but the texture resolution looks the same. It doesn't look any more blurry in the Unity image.
To me it looks more like a shader + lighting issue. Are you using the Standard shader? Do you have additional maps that are not applied in the Unity material (like a normal map)?
Try lighting him with some point lights instead of just a hard directional light.
On a side note, 8192 is an absurdly high resolution for that guy. With how blurry the texture looks (in both Blender and Unity) you should be able to get the same detail with 512, at most 1024.