Text archives Help
- From: bigler@sci.utah.edu
- To: manta@sci.utah.edu
- Subject: [MANTA] r1464 - in trunk: Core/Math Engine/Control Engine/ImageTraversers Model/Textures StandAlone
- Date: Wed, 11 Jul 2007 12:57:57 -0600 (MDT)
Author: bigler
Date: Wed Jul 11 12:57:56 2007
New Revision: 1464
Removed:
trunk/StandAlone/noisegen.cc
Modified:
trunk/Core/Math/MT_RNG.h
trunk/Engine/Control/RTRT.cc
trunk/Engine/ImageTraversers/TiledImageTraverser.cc
trunk/Model/Textures/Constant.cc
trunk/StandAlone/CMakeLists.txt
Log:
Core/Math/MT_RNG.h
Added padding (didn't seem to change the performce one way or the
other for now).
Engine/Control/RTRT.cc
Added some code for using the MT_RNG instead of CheapRNG. Defaults
to CheapRNG since it is faster for now.
Engine/ImageTraversers/TiledImageTraverser.cc
Seed the RNG based on the pixel location. This keeps it from
flashing about.
Model/Textures/Constant.cc
Removed unused variable.
StandAlone/CMakeLists.txt
StandAlone/noisegen.cc
Removed test program. The noise renderer is easier to use.
Modified: trunk/Core/Math/MT_RNG.h
==============================================================================
--- trunk/Core/Math/MT_RNG.h (original)
+++ trunk/Core/Math/MT_RNG.h Wed Jul 11 12:57:56 2007
@@ -40,10 +40,13 @@
#define MT_RNG_M 397
class MT_RNG : public RandomNumberGenerator {
+ char padding0[128];
unsigned int mt[MT_RNG_N]; // the array for the state vector
int mti; // mti==MT_RNG_N+1 means mt[MT_RNG_N] is not initialized
+ char padding1[128];
public:
MT_RNG(): mti(MT_RNG_N+1) {}
+ static void create(RandomNumberGenerator*& rng ) { rng = new MT_RNG(); }
void seed(unsigned int seed);
virtual unsigned int nextInt();
Modified: trunk/Engine/Control/RTRT.cc
==============================================================================
--- trunk/Engine/Control/RTRT.cc (original)
+++ trunk/Engine/Control/RTRT.cc Wed Jul 11 12:57:56 2007
@@ -68,6 +68,7 @@
#include <Interface/Material.h>
#include <Core/Math/CheapRNG.h>
+#include <Core/Math/MT_RNG.h>
using namespace Manta;
using namespace std;
@@ -145,7 +146,11 @@
scene = 0;
verbose_transactions = false;
+#if 1
create_rng = Callback::create(&CheapRNG::create);
+#else
+ create_rng = Callback::create(&MT_RNG::create);
+#endif
}
RTRT::~RTRT()
Modified: trunk/Engine/ImageTraversers/TiledImageTraverser.cc
==============================================================================
--- trunk/Engine/ImageTraversers/TiledImageTraverser.cc (original)
+++ trunk/Engine/ImageTraversers/TiledImageTraverser.cc Wed Jul 11 12:57:56
2007
@@ -40,6 +40,7 @@
#include <Interface/LoadBalancer.h>
#include <Interface/PixelSampler.h>
#include <Interface/RayPacket.h> // for maxsize
+#include <Interface/RandomNumberGenerator.h>
#include <MantaSSE.h>
using namespace Manta;
@@ -200,6 +201,7 @@
for(int i=0;i<fsize;i++)
frag.pixel[1][i] = y;
#endif
+ context.rng->seed(xstart*xres+y);
context.pixelSampler->renderFragment(context, frag);
image->set(frag);
}
@@ -233,6 +235,7 @@
frag.pixel[0][i] = i+x;
#endif
frag.setSize(size);
+ context.rng->seed(x*xres+y);
context.pixelSampler->renderFragment(context,
frag);
image->set(frag);
}
@@ -267,6 +270,7 @@
}
}
frag.setSize(j_end * i_end);
+ context.rng->seed(x*xres+y);
context.pixelSampler->renderFragment(context, frag);
image->set(frag);
Modified: trunk/Model/Textures/Constant.cc
==============================================================================
--- trunk/Model/Textures/Constant.cc (original)
+++ trunk/Model/Textures/Constant.cc Wed Jul 11 12:57:56 2007
@@ -21,7 +21,6 @@
for(;i<b;i++){
results.set(i, value);
}
- RayPacketData* data = rays.data;
for(;i<e;i+=4){
_mm_store_ps(&results.colordata[0][i], _mm_set1_ps(value[0]));
_mm_store_ps(&results.colordata[1][i], _mm_set1_ps(value[1]));
@@ -55,7 +54,6 @@
for(;i<b;i++){
results.set(i, value);
}
- RayPacketData* data = rays.data;
for(;i<e;i+=4){
_mm_store_ps(&results.data[i], _mm_set1_ps(value));
}
Modified: trunk/StandAlone/CMakeLists.txt
==============================================================================
--- trunk/StandAlone/CMakeLists.txt (original)
+++ trunk/StandAlone/CMakeLists.txt Wed Jul 11 12:57:56 2007
@@ -58,7 +58,3 @@
IF (BUILD_DISPLAY_TEST)
ENDIF(BUILD_DISPLAY_TEST)
- ADD_EXECUTABLE(noisegen noisegen.cc)
- TARGET_LINK_LIBRARIES(noisegen SCIRun_Core Manta_Core Manta_Model)
- TARGET_LINK_LIBRARIES(noisegen ${CMAKE_THREAD_LIBS_INIT}
- -lm)
- [MANTA] r1464 - in trunk: Core/Math Engine/Control Engine/ImageTraversers Model/Textures StandAlone, bigler, 07/11/2007
Archive powered by MHonArc 2.6.16.