nitlanguage
/
nit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
gamnit: intro dynamic resolution support
[nit.git]
/
lib
/
gamnit
/
depth
/
depth.nit
diff --git
a/lib/gamnit/depth/depth.nit
b/lib/gamnit/depth/depth.nit
index
b3cab23
..
f18f2eb
100644
(file)
--- a/
lib/gamnit/depth/depth.nit
+++ b/
lib/gamnit/depth/depth.nit
@@
-17,7
+17,9
@@
module depth
intrude import more_materials
import more_models
intrude import more_materials
import more_models
+import model_dimensions
import particles
import particles
+import selection
redef class App
redef class App
@@
-30,7
+32,7
@@
redef class App
world_camera.near = 0.1
# Prepare programs
world_camera.near = 0.1
# Prepare programs
- var programs = [versatile_program, normals_program, explosion_program, smoke_program: GamnitProgram]
+ var programs = [versatile_program, normals_program, explosion_program, smoke_program, static_program, selection_program: GamnitProgram]
for program in programs do
program.compile_and_link
var gamnit_error = program.error
for program in programs do
program.compile_and_link
var gamnit_error = program.error
@@
-43,6
+45,8
@@
redef class App
# Draw all elements of `actors` and then call `frame_core_flat`
protected fun frame_core_depth(display: GamnitDisplay)
do
# Draw all elements of `actors` and then call `frame_core_flat`
protected fun frame_core_depth(display: GamnitDisplay)
do
+ frame_core_dynamic_resolution_before display
+
# Update cameras on both our programs
versatile_program.use
versatile_program.mvp.uniform world_camera.mvp_matrix
# Update cameras on both our programs
versatile_program.use
versatile_program.mvp.uniform world_camera.mvp_matrix
@@
-50,17
+54,28
@@
redef class App
normals_program.use
normals_program.mvp.uniform app.world_camera.mvp_matrix
normals_program.use
normals_program.mvp.uniform app.world_camera.mvp_matrix
+ frame_core_depth_clock.lapse
for actor in actors do
for leaf in actor.model.leaves do
leaf.material.draw(actor, leaf)
end
end
for actor in actors do
for leaf in actor.model.leaves do
leaf.material.draw(actor, leaf)
end
end
+ perfs["gamnit depth actors"].add frame_core_depth_clock.lapse
+
+ frame_core_world_sprites display
+ perfs["gamnit depth sprites"].add frame_core_depth_clock.lapse
# Toggle writing to the depth buffer for particles effects
glDepthMask false
for system in particle_systems do system.draw
glDepthMask true
# Toggle writing to the depth buffer for particles effects
glDepthMask false
for system in particle_systems do system.draw
glDepthMask true
+ perfs["gamnit depth particles"].add frame_core_depth_clock.lapse
- frame_core_flat display
+ frame_core_ui_sprites display
+ perfs["gamnit depth ui_sprites"].add frame_core_depth_clock.lapse
+
+ frame_core_dynamic_resolution_after display
end
end
+
+ private var frame_core_depth_clock = new Clock
end
end