diff options
Diffstat (limited to 'nGenEx')
-rw-r--r-- | nGenEx/Game.h | 1 | ||||
-rw-r--r-- | nGenEx/Polygon.cpp | 15 | ||||
-rw-r--r-- | nGenEx/Screen.cpp | 9 | ||||
-rw-r--r-- | nGenEx/VideoDX9.cpp | 7 |
4 files changed, 16 insertions, 16 deletions
diff --git a/nGenEx/Game.h b/nGenEx/Game.h index 82864da..bda2114 100644 --- a/nGenEx/Game.h +++ b/nGenEx/Game.h @@ -25,6 +25,7 @@ void FlushKeys(); void BufferKey(int vkey);
int GetKey();
int GetKeyPlus(int& key, int& shift);
+void ProcessKeyMessage();
extern "C" bool ProfileGameLoop(void);
diff --git a/nGenEx/Polygon.cpp b/nGenEx/Polygon.cpp index 8051ec3..e21c442 100644 --- a/nGenEx/Polygon.cpp +++ b/nGenEx/Polygon.cpp @@ -665,15 +665,12 @@ Material::GetThumbColor(int i, int j, int size) int tu = (int) (u * tex_bumpmap->Width());
int tv = (int) (v * tex_bumpmap->Height());
- double du1 = tex_bumpmap->GetColor(tu,tv).Red() -
- tex_bumpmap->GetColor(tu-1,tv).Red();
- double du2 = tex_bumpmap->GetColor(tu+1,tv).Red() -
- tex_bumpmap->GetColor(tu,tv).Red();
-
- double dv1 = tex_bumpmap->GetColor(tu,tv).Red() -
- tex_bumpmap->GetColor(tu,tv-1).Red();
- double dv2 = tex_bumpmap->GetColor(tu,tv+1).Red() -
- tex_bumpmap->GetColor(tu,tv).Red();
+ DWORD tmpred = tex_bumpmap->GetColor(tu,tv).Red();
+ double du1 = tmpred - tex_bumpmap->GetColor(tu-1,tv).Red();
+ double du2 = tex_bumpmap->GetColor(tu+1,tv).Red() - tmpred;
+
+ double dv1 = tmpred - tex_bumpmap->GetColor(tu,tv-1).Red();
+ double dv2 = tex_bumpmap->GetColor(tu,tv+1).Red() - tmpred;
double du = (du1 + du2) / 512 * 1e-8;
double dv = (dv1 + dv2) / 512 * 1e-8;
diff --git a/nGenEx/Screen.cpp b/nGenEx/Screen.cpp index 045c38d..39f5586 100644 --- a/nGenEx/Screen.cpp +++ b/nGenEx/Screen.cpp @@ -107,11 +107,12 @@ Screen::Resize(int w, int h) ListIter<Window> iter = window_list;
while (++iter) {
Window* win = iter.value();
+ Rect tmprect = win->GetRect();
- double w_x = win->GetRect().x / (double) width;
- double w_y = win->GetRect().y / (double) height;
- double w_w = win->GetRect().w / (double) width;
- double w_h = win->GetRect().h / (double) height;
+ double w_x = tmprect.x / (double) width;
+ double w_y = tmprect.y / (double) height;
+ double w_w = tmprect.w / (double) width;
+ double w_h = tmprect.h / (double) height;
Rect r;
diff --git a/nGenEx/VideoDX9.cpp b/nGenEx/VideoDX9.cpp index d3c623c..902f4cb 100644 --- a/nGenEx/VideoDX9.cpp +++ b/nGenEx/VideoDX9.cpp @@ -1345,9 +1345,10 @@ VideoDX9::SetLights(const List<Light>& lights) d3d_light.Type = (D3DLIGHTTYPE) light->Type();
if (light->Type() == Light::LIGHT_DIRECTIONAL) {
- d3d_light.Direction.x = (float) (-light->Location().x);
- d3d_light.Direction.y = (float) (-light->Location().y);
- d3d_light.Direction.z = (float) (-light->Location().z);
+ Point light_location = light->Location();
+ d3d_light.Direction.x = (float) (-light_location.x);
+ d3d_light.Direction.y = (float) (-light_location.y);
+ d3d_light.Direction.z = (float) (-light_location.z);
if (d3d_light.Direction.x == 0 &&
d3d_light.Direction.y == 0 &&
|