First of all, I am really new to all of this. This is my first time so its really confusing me if it's better to create a scene and then import it into Unity or is it better to just create objects like chracters, chairs in blender and scenes in Unity? I just want to recreate a scene of my school and include it in my final project as a Unity game where it will have no function other than walking around and some jumping and fighting? Because my project is not based on the game, it will just help it.
There's nothing wrong to creating your scene in blender and then importing it to Unity, in fact you can directly import the blender file and get the lighting just as you did in blender, but the way unity and blender renders the scene is different, so none of the post processing effects will get transferred to unity, and you'll have to tweak a lot of stuff in unity to get the look you want, I suggest you to make your assets in Blender if you feel it's faster to work with, and then export it to unity and setup the rest as per your preferences. It can be a bit of confusing at first but it all comes down to your personal preferences.
Here are a few tips:
- Split objects wisely in Blender Keep different .blend files or at least .fbx files for each object Keep your objects at the center of space, their scales applied (scale of 1), and rotation applied (rotate -90 degrees around the x-axis then Ctrl-A apply rot to fix the Blender --> Unity axis issue: you can rotate back 90 degrees so that in Blender it has a 90 degree rot around x-axis but be oriented correctly) Remember materials in Blender are only used to create the material NAME in Unity (and bake out textures)
- DO NOT overwrite materials in Unity -- just adapt the blank materials imported from Blender
Example: You are working on a simple scene that has a room with a table, chair and character. So in Blender create and save a file with a complete room model (without the furnishings). Next, make and save a table file with a table model with all the details (perhaps a couple knives, forks, and plates). Make and save a chair .blend and then a separate character .blend...this continues until you are done with objects needed for your scene. Of course, all of these would be saved in a "room scene" folder (outside of your Unity project). Export all the models as .fbx files. Finally, import these into Unity with their (named) materials and import your textures...put the objects together in our scene and setup lighting, cameras, particle FX...
Example 2: You are working on a game that programmatically generates levels (ie. dungeons, mazes). The best thing to do for this type of game is to create modular components that get generated by scripting. These components would be something like a hallway piece, a room piece, a turning hall etc.. To make these, model a base for the wall and floor maybe structural details (windows, doors...), then save that as a file and of course export to an .fbx for Unity. Make some detail objects like mentioned in example 2 then import the models into Unity. Create prefabs for hallway, room...by parenting the details to the base, then instantiate the prefabs from a script.
As mentioned in the comments, there's no perfect way and depending on your project and its design, either might work.
However, I immediately had to think about a YouTube video: In the Boundary Break episode about Telltale Games's The Walking Dead Season 1 one of the original developers speaks a bit about their experiences of creating whole scenes for the game on a 3D editor rather than their game engine:
If this is a project that other people will eventually work on, there's a good reason to create individual assets in Blender but assemble the scene in Unity: this is likely to make the project more accessible for other developers who have Unity experience but not Blender experience. The Unity Editor is targeted at game designers, level designers, and developers. Blender is targeted at 3D artists. Many Unity developers who are comfortable assembling scenes, setting up materials, etc in the Unity Editor may not have any idea how to use Blender and may struggle with learning its more complex user interface and material settings. Team members who are learning Blender for the first time may get frustrated with online tutorials, as the Blender team has completely redesigned the entire UI several times and it's extremely difficult to follow older tutorials in the newest interface.