mirror of
https://github.com/korenkonder/ReDIVA.git
synced 2026-10-09 23:58:26 +03:00
Renamed some fields in Shadow
This commit is contained in:
+13
-13
@@ -87,8 +87,8 @@ namespace rndr {
|
||||
render(), sync_gpu(), cpu_time(), gpu_time(), draw_pass_3d(), field_11E(), field_11F(),
|
||||
field_120(), show_ref_map(), reflect_type(), clear(), tex_index(), width(), height(),
|
||||
multisample_framebuffer(), multisample_renderbuffer(), multisample(), check_state(),
|
||||
show_vector_flags(), show_vector_length(), show_vector_z_offset(), field_2F8(), effect_texture(),
|
||||
npr_param(), field_31C(), field_31D(), field_31E(), field_31F(), field_320(), npr() {
|
||||
show_vector_flags(), show_vector_length(), show_vector_z_offset(), show_stage_shadow(),
|
||||
effect_texture(), npr_param(), field_31C(), field_31D(), field_31E(), field_31F(), field_320(), npr() {
|
||||
for (bool& i : pass_sw)
|
||||
i = true;
|
||||
|
||||
@@ -158,7 +158,7 @@ namespace rndr {
|
||||
show_vector_flags = 0;
|
||||
show_vector_length = 0.05f;
|
||||
show_vector_z_offset = 0.0f;
|
||||
field_2F8 = false;
|
||||
show_stage_shadow = false;
|
||||
effect_texture = 0;
|
||||
|
||||
reflect = false;
|
||||
@@ -433,7 +433,8 @@ namespace rndr {
|
||||
draw_pass_shadow_begin_make_shadowmap(shad, v11[i], j);
|
||||
rctx->disp_manager->draw((mdl::ObjType)(mdl::OBJ_TYPE_SHADOW_CHARA + v11[i]));
|
||||
if (rctx->disp_manager->get_obj_count((mdl::ObjType)(mdl::OBJ_TYPE_SHADOW_OBJECT_CHARA + v11[i])) > 0) {
|
||||
gl_state_set_color_mask(field_2F8 ? GL_TRUE : GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE);
|
||||
gl_state_set_color_mask(show_stage_shadow
|
||||
? GL_TRUE : GL_FALSE, GL_FALSE, GL_FALSE, GL_FALSE);
|
||||
rctx->disp_manager->draw((mdl::ObjType)(mdl::OBJ_TYPE_SHADOW_OBJECT_CHARA + i));
|
||||
gl_state_set_color_mask(GL_TRUE, GL_TRUE, GL_TRUE, GL_TRUE);
|
||||
}
|
||||
@@ -1210,7 +1211,7 @@ static void draw_pass_shadow_begin_make_shadowmap(Shadow* shad, int32_t index, i
|
||||
glClear(GL_COLOR_BUFFER_BIT);
|
||||
glScissor(1, 1, tex->width - 2, tex->height - 2);
|
||||
|
||||
float_t range = shad->get_range();
|
||||
float_t shadow_range = shad->get_shadow_range();
|
||||
float_t offset;
|
||||
vec3* interest;
|
||||
vec3* view_point;
|
||||
@@ -1229,7 +1230,8 @@ static void draw_pass_shadow_begin_make_shadowmap(Shadow* shad, int32_t index, i
|
||||
mat4_translate(offset, 0.0f, 0.0f, &temp);
|
||||
|
||||
mat4 proj;
|
||||
mat4_ortho(-range, range, -range, range, shad->z_near, shad->z_far, &proj);
|
||||
mat4_ortho(-shadow_range, shadow_range,
|
||||
-shadow_range, shadow_range, shad->z_near, shad->z_far, &proj);
|
||||
mat4_mul(&proj, &temp, &rctx->proj_mat);
|
||||
mat4_look_at(view_point, interest, &rctx->view_mat);
|
||||
|
||||
@@ -1643,7 +1645,7 @@ static void draw_pass_3d_shadow_set(Shadow* shad, render_context* rctx) {
|
||||
rctx->draw_state->light = true;
|
||||
uniform_value[U_LIGHT_1] = shad->num_light > 1 ? 1 : 0;
|
||||
|
||||
float_t range = shad->get_range();
|
||||
float_t shadow_range = shad->get_shadow_range();
|
||||
for (int32_t i = 0; i < 2; i++) {
|
||||
float_t offset;
|
||||
vec3* interest;
|
||||
@@ -1666,7 +1668,8 @@ static void draw_pass_3d_shadow_set(Shadow* shad, render_context* rctx) {
|
||||
mat4_mul_translate(&temp, offset, 0.0f, 0.0f, &temp);
|
||||
|
||||
mat4 proj;
|
||||
mat4_ortho(-range, range, -range, range, shad->z_near, shad->z_far, &proj);
|
||||
mat4_ortho(-shadow_range, shadow_range,
|
||||
-shadow_range, shadow_range, shad->z_near, shad->z_far, &proj);
|
||||
mat4_mul(&proj, &temp, &proj);
|
||||
|
||||
mat4 view;
|
||||
@@ -1693,11 +1696,8 @@ static void draw_pass_3d_shadow_set(Shadow* shad, render_context* rctx) {
|
||||
vec4 ambient;
|
||||
if (data->get_type() == LIGHT_PARALLEL)
|
||||
data->get_ambient(ambient);
|
||||
else {
|
||||
ambient.x = shad->ambient;
|
||||
ambient.y = shad->ambient;
|
||||
ambient.z = shad->ambient;
|
||||
}
|
||||
else
|
||||
*(vec3*)&ambient.x = shad->shadow_ambient;
|
||||
|
||||
rctx->obj_scene.g_shadow_ambient = { ambient.x, ambient.y, ambient.z, 1.0f };
|
||||
rctx->obj_scene.g_shadow_ambient1 = { 1.0f - ambient.x, 1.0f - ambient.y, 1.0f - ambient.z, 0.0f };
|
||||
|
||||
@@ -76,7 +76,7 @@ namespace rndr {
|
||||
int32_t show_vector_flags;
|
||||
float_t show_vector_length;
|
||||
float_t show_vector_z_offset;
|
||||
bool field_2F8;
|
||||
bool show_stage_shadow;
|
||||
std::list<draw_pre_process> pre_process;
|
||||
texture* effect_texture;
|
||||
int32_t npr_param;
|
||||
|
||||
+16
-16
@@ -10,10 +10,10 @@ Shadow* shadow_ptr;
|
||||
|
||||
extern render_context* rctx_ptr;
|
||||
|
||||
Shadow::Shadow() : curr_render_textures(), view_region(), range(), field_1C0(), field_1C8(),
|
||||
field_200(), field_208(), near_blur(), blur_filter(), far_blur(), field_2BC(), distance(),
|
||||
field_2C4(), z_near(), z_far(), field_2D0(), field_2D4(), field_2D8(), field_2DC(), field_2E0(),
|
||||
ambient(), field_2E8(), num_light(), light_enable(), self_shadow(), blur_filter_enable(), separate() {
|
||||
Shadow::Shadow() : curr_render_textures(), shadow_range(), shadow_range_factor(), field_1C0(), field_1C8(),
|
||||
field_200(), field_208(), near_blur(), blur_filter(), far_blur(), field_2BC(), distance(), field_2C4(),
|
||||
z_near(), z_far(), field_2D0(), field_2D4(), field_2D8(), field_2DC(), field_2E0(), shadow_ambient(),
|
||||
show_texture(), num_light(), light_enable(), self_shadow(), blur_filter_enable(), separate() {
|
||||
reset();
|
||||
}
|
||||
|
||||
@@ -111,7 +111,7 @@ void Shadow::ctrl() {
|
||||
|
||||
float_t v2 = max_def(field_1C8[0], field_1C8[1]);
|
||||
separate = false;
|
||||
view_region = v2 + 1.2f;
|
||||
shadow_range = v2 + 1.2f;
|
||||
field_200[0] = 0;
|
||||
field_200[1] = 1;
|
||||
if (num_light >= 2) {
|
||||
@@ -125,11 +125,11 @@ void Shadow::ctrl() {
|
||||
v16 = 0.0f;
|
||||
|
||||
if (v16 > 1.2f) {
|
||||
view_region = v2 + 2.4f;
|
||||
shadow_range = v2 + 2.4f;
|
||||
separate = true;
|
||||
}
|
||||
else
|
||||
view_region = v2 + 1.2f + v16;
|
||||
shadow_range = v2 + 1.2f + v16;
|
||||
|
||||
if (vec3::dot(v12, direction) < vec3::dot(v14, direction)) {
|
||||
field_200[1] = 0;
|
||||
@@ -211,7 +211,7 @@ void Shadow::ctrl() {
|
||||
float_t v2 = 0.0f;
|
||||
float_t v67 = max_def(field_1C8[0], field_1C8[1]);
|
||||
separate = false;
|
||||
view_region = v67 + 1.2f;
|
||||
shadow_range = v67 + 1.2f;
|
||||
field_200[0] = 0;
|
||||
field_200[1] = 1;
|
||||
if (num_light >= 2) {
|
||||
@@ -248,11 +248,11 @@ void Shadow::ctrl() {
|
||||
v79 = v70;
|
||||
|
||||
if (v79 > v67 + 1.2f) {
|
||||
view_region = v67 + 2.4f;
|
||||
shadow_range = v67 + 2.4f;
|
||||
separate = true;
|
||||
}
|
||||
else
|
||||
view_region = v79 + 1.2f;
|
||||
shadow_range = v79 + 1.2f;
|
||||
|
||||
if (vec3::dot(field_1A8[0] - interest_shared, direction)
|
||||
< vec3::dot(field_1A8[1] - interest_shared, direction)) {
|
||||
@@ -273,8 +273,8 @@ void Shadow::free() {
|
||||
reset();
|
||||
}
|
||||
|
||||
float_t Shadow::get_range() {
|
||||
return range * view_region;
|
||||
float_t Shadow::get_shadow_range() {
|
||||
return shadow_range * shadow_range_factor;
|
||||
}
|
||||
|
||||
int32_t Shadow::init() {
|
||||
@@ -313,8 +313,8 @@ int32_t Shadow::init() {
|
||||
}
|
||||
|
||||
void Shadow::reset() {
|
||||
view_region = 1.2f;
|
||||
range = 1.0f;
|
||||
shadow_range = 1.2f;
|
||||
shadow_range_factor = 1.0f;
|
||||
|
||||
for (int32_t i = 0; i < 2; i++) {
|
||||
view_point[i] = 1.0f;
|
||||
@@ -341,10 +341,10 @@ void Shadow::reset() {
|
||||
field_2D8 = 80.0f;
|
||||
field_2DC = 2.0f;
|
||||
field_2E0 = 0.05f;
|
||||
ambient = 0.4f;
|
||||
shadow_ambient = 0.4f;
|
||||
num_light = 0;
|
||||
direction = vec3(0.0f, -1.0f, -1.0f) * (1.0f / sqrtf(2.0f));
|
||||
field_2E8 = false;
|
||||
show_texture = false;
|
||||
self_shadow = true;
|
||||
separate = false;
|
||||
field_208 = (z_far - z_near) * 0.5f;
|
||||
|
||||
+5
-5
@@ -21,8 +21,8 @@ enum shadow_type_enum {
|
||||
struct Shadow {
|
||||
RenderTexture render_textures[7];
|
||||
RenderTexture* curr_render_textures[3];
|
||||
float_t view_region;
|
||||
float_t range;
|
||||
float_t shadow_range;
|
||||
float_t shadow_range_factor;
|
||||
vec3 view_point[2];
|
||||
vec3 interest[2];
|
||||
vec3 field_1A8[2];
|
||||
@@ -48,8 +48,8 @@ struct Shadow {
|
||||
float_t field_2D8;
|
||||
float_t field_2DC;
|
||||
float_t field_2E0;
|
||||
float_t ambient;
|
||||
bool field_2E8;
|
||||
float_t shadow_ambient;
|
||||
bool show_texture;
|
||||
int32_t num_light;
|
||||
bool light_enable[2];
|
||||
bool self_shadow;
|
||||
@@ -61,7 +61,7 @@ struct Shadow {
|
||||
|
||||
void ctrl();
|
||||
void free();
|
||||
float_t get_range();
|
||||
float_t get_shadow_range();
|
||||
int32_t init();
|
||||
void reset();
|
||||
};
|
||||
|
||||
+5
-5
@@ -439,11 +439,11 @@ static bool object_bounding_sphere_check_visibility_shadow(
|
||||
float_t radius = sphere->radius;
|
||||
|
||||
Shadow* shad = shadow_ptr_get();
|
||||
float_t range = shad->get_range();
|
||||
if ((center.x + radius) < -range
|
||||
|| (center.x - radius) > range
|
||||
|| (center.y + radius) < -range
|
||||
|| (center.y - radius) > range
|
||||
float_t shadow_range = shad->get_shadow_range();
|
||||
if ((center.x + radius) < -shadow_range
|
||||
|| (center.x - radius) > shadow_range
|
||||
|| (center.y + radius) < -shadow_range
|
||||
|| (center.y - radius) > shadow_range
|
||||
|| (center.z - radius) > -shad->z_near
|
||||
|| (center.z + radius) < -shad->z_far)
|
||||
return false;
|
||||
|
||||
@@ -455,11 +455,11 @@ static bool object_bounding_sphere_check_visibility_shadow(
|
||||
float_t radius = sphere->radius;
|
||||
|
||||
Shadow* shad = shadow_ptr_get();
|
||||
float_t range = shad->get_range();
|
||||
if ((center.x + radius) < -range
|
||||
|| (center.x - radius) > range
|
||||
|| (center.y + radius) < -range
|
||||
|| (center.y - radius) > range
|
||||
float_t shadow_range = shad->get_shadow_range();
|
||||
if ((center.x + radius) < -shadow_range
|
||||
|| (center.x - radius) > shadow_range
|
||||
|| (center.y + radius) < -shadow_range
|
||||
|| (center.y - radius) > shadow_range
|
||||
|| (center.z - radius) > -shad->z_near
|
||||
|| (center.z + radius) < -shad->z_far)
|
||||
return false;
|
||||
|
||||
@@ -4681,7 +4681,7 @@ bool pv_game::unload() {
|
||||
rend.update_res(0, -1);
|
||||
|
||||
rctx_ptr->disp_manager->object_culling = true;
|
||||
shadow_ptr_get()->range = 1.0f;
|
||||
shadow_ptr_get()->shadow_range_factor = 1.0f;
|
||||
rctx_ptr->render_manager->set_effect_texture(0);
|
||||
|
||||
sound_work_reset_all_se();
|
||||
|
||||
@@ -1854,9 +1854,9 @@ bool pv_game_pv_data::dsc_ctrl(float_t delta_time, int64_t curr_time,
|
||||
pv_game->set_data_itmpv_chara_id(chara_id, index, attach == 1);
|
||||
} break;
|
||||
case DSC_FT_SHADOW_RANGE: {
|
||||
float_t range = (float_t)data[0] * 0.001f;
|
||||
float_t shadow_range_factor = (float_t)data[0] * 0.001f;
|
||||
|
||||
shadow_ptr_get()->range = range;
|
||||
shadow_ptr_get()->shadow_range_factor = shadow_range_factor;
|
||||
} break;
|
||||
case DSC_FT_HAND_SCALE: {
|
||||
chara_id = data[0];
|
||||
|
||||
@@ -7388,7 +7388,7 @@ bool x_pv_game::unload() {
|
||||
rend.update_res(0, -1);
|
||||
|
||||
rctx_ptr->disp_manager->object_culling = true;
|
||||
shadow_ptr_get()->range = 1.0f;
|
||||
shadow_ptr_get()->shadow_range_factor = 1.0f;
|
||||
rctx_ptr->render_manager->set_effect_texture(0);
|
||||
|
||||
sound_work_reset_all_se();
|
||||
|
||||
Reference in New Issue
Block a user