summaryrefslogtreecommitdiffhomepage
path: root/nGenEx
diff options
context:
space:
mode:
Diffstat (limited to 'nGenEx')
-rw-r--r--nGenEx/Game.h1
-rw-r--r--nGenEx/Polygon.cpp15
-rw-r--r--nGenEx/Screen.cpp9
-rw-r--r--nGenEx/VideoDX9.cpp7
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 &&