diff options
| author | Juan Linietsky | 2014-10-12 02:13:22 -0300 |
|---|---|---|
| committer | Juan Linietsky | 2014-10-12 02:13:22 -0300 |
| commit | 948fd83cdded7fed77ae5213101c1a2ece580434 (patch) | |
| tree | a6953095dc4feaac1485c04b35039b85f1a95534 /servers | |
| parent | 37354da5b0dc1dc8dcfd9d844e593935311f4f8f (diff) | |
| download | godot-948fd83cdded7fed77ae5213101c1a2ece580434.tar.gz godot-948fd83cdded7fed77ae5213101c1a2ece580434.tar.zst godot-948fd83cdded7fed77ae5213101c1a2ece580434.zip | |
Little Bits
-=-=-=-=-=-
-fix duplicate function bug when creating script callback in editor
-fix bug where hiding lights does not work
-fix 2D audio listener bug (romulox_x reported)
-fix exported properties with inheritance bug
-fix timer autostart (make it not work on editor)
-reactivate first camara found if viewport runs out of active camera
-option to hide gizmos in viewport
-changed skeleton gizmo because it sucks
-Make convex shapes using CollisionShape visible (use quickhull class)
-fix up menu when editing a mesh, to export collision, navmesh, convex, etc. from it.
-make a menu option to show SRGB in 3D editor views by default
-make option to edit default light direction in viewport settings
-make option to edit default ambient light in viewport settings
-make software conversion of linear->RGB if hardware support not found
Diffstat (limited to 'servers')
| -rw-r--r-- | servers/visual/rasterizer.cpp | 3 | ||||
| -rw-r--r-- | servers/visual/visual_server_raster.cpp | 15 | ||||
| -rw-r--r-- | servers/visual/visual_server_raster.h | 3 | ||||
| -rw-r--r-- | servers/visual/visual_server_wrap_mt.h | 2 | ||||
| -rw-r--r-- | servers/visual_server.h | 3 |
5 files changed, 23 insertions, 3 deletions
diff --git a/servers/visual/rasterizer.cpp b/servers/visual/rasterizer.cpp index 95746b767..643968796 100644 --- a/servers/visual/rasterizer.cpp +++ b/servers/visual/rasterizer.cpp @@ -363,12 +363,13 @@ RID Rasterizer::fixed_material_create() { FixedMaterial &fm=*fixed_materials[mat]; fm.self=mat; fm.get_key(); + material_set_flag(mat,VS::MATERIAL_FLAG_COLOR_ARRAY_SRGB,true); for(int i=0;i<VS::FIXED_MATERIAL_PARAM_MAX;i++) { material_set_param(mat,_fixed_material_param_names[i],fm.param[i]); //must be there } fixed_material_dirty_list.add(&fm.dirty_list); - //print_line("FMC: "+itos(mat.get_id())); + //print_line("FMC: "+itos(mat.get_id())); return mat; } diff --git a/servers/visual/visual_server_raster.cpp b/servers/visual/visual_server_raster.cpp index eede75064..8250e4c08 100644 --- a/servers/visual/visual_server_raster.cpp +++ b/servers/visual/visual_server_raster.cpp @@ -1786,6 +1786,17 @@ void VisualServerRaster::scenario_set_environment(RID p_scenario, RID p_environm } +void VisualServerRaster::scenario_set_fallback_environment(RID p_scenario, RID p_environment) { + + VS_CHANGED; + + Scenario *scenario = scenario_owner.get(p_scenario); + ERR_FAIL_COND(!scenario); + scenario->fallback_environment=p_environment; + + +} + RID VisualServerRaster::scenario_get_environment(RID p_scenario, RID p_environment) const{ const Scenario *scenario = scenario_owner.get(p_scenario); @@ -5516,8 +5527,10 @@ void VisualServerRaster::_render_camera(Viewport *p_viewport,Camera *p_camera, S RID environment; if (p_camera->env.is_valid()) //camera has more environment priority environment=p_camera->env; - else + else if (p_scenario->environment.is_valid()) environment=p_scenario->environment; + else + environment=p_scenario->fallback_environment; rasterizer->begin_scene(p_viewport->viewport_data,environment,p_scenario->debug); rasterizer->set_viewport(viewport_rect); diff --git a/servers/visual/visual_server_raster.h b/servers/visual/visual_server_raster.h index 41ad3aab1..8ed348aff 100644 --- a/servers/visual/visual_server_raster.h +++ b/servers/visual/visual_server_raster.h @@ -320,6 +320,7 @@ class VisualServerRaster : public VisualServer { List<RID> directional_lights; RID environment; + RID fallback_environment; Instance *dirty_instances; @@ -1038,6 +1039,8 @@ public: virtual void scenario_set_debug(RID p_scenario,ScenarioDebugMode p_debug_mode); virtual void scenario_set_environment(RID p_scenario, RID p_environment); virtual RID scenario_get_environment(RID p_scenario, RID p_environment) const; + virtual void scenario_set_fallback_environment(RID p_scenario, RID p_environment); + /* INSTANCING API */ diff --git a/servers/visual/visual_server_wrap_mt.h b/servers/visual/visual_server_wrap_mt.h index 73e736f68..1ad8c8598 100644 --- a/servers/visual/visual_server_wrap_mt.h +++ b/servers/visual/visual_server_wrap_mt.h @@ -929,6 +929,7 @@ public: FUNC2(camera_set_environment,RID,RID); FUNC1RC(RID,camera_get_environment,RID); + FUNC2(camera_set_use_vertical_aspect,RID,bool); FUNC2RC(bool,camera_is_using_vertical_aspect,RID,bool); @@ -998,6 +999,7 @@ public: FUNC2(scenario_set_debug,RID,ScenarioDebugMode); FUNC2(scenario_set_environment,RID, RID); FUNC2RC(RID,scenario_get_environment,RID, RID); + FUNC2(scenario_set_fallback_environment,RID, RID); /* INSTANCING API */ diff --git a/servers/visual_server.h b/servers/visual_server.h index e121f5055..366758f1d 100644 --- a/servers/visual_server.h +++ b/servers/visual_server.h @@ -169,6 +169,7 @@ public: MATERIAL_FLAG_UNSHADED, MATERIAL_FLAG_ONTOP, MATERIAL_FLAG_LIGHTMAP_ON_UV2, + MATERIAL_FLAG_COLOR_ARRAY_SRGB, MATERIAL_FLAG_MAX, }; @@ -807,7 +808,7 @@ public: virtual void scenario_set_debug(RID p_scenario,ScenarioDebugMode p_debug_mode)=0; virtual void scenario_set_environment(RID p_scenario, RID p_environment)=0; virtual RID scenario_get_environment(RID p_scenario, RID p_environment) const=0; - + virtual void scenario_set_fallback_environment(RID p_scenario, RID p_environment)=0; /* INSTANCING API */ |
