VB6 project to view landmass data. Landmass data will be provided as a greyscale windows bmp format image. Application will generate a directx object from the source greyscale image with black as the lowest points, white as highest, and in between gray values scaled appropriately. A second 24 bit image in windows bmp format will be used to "paint" the landmass. No per polygon texture assignments necessary. Just the ability to overlay the entire surface of the previewed landmass with a single image whose colors will match the features of the landmass.
Required features: Landmass should be "extruded" from the top surface of a cube rather than a plane. The generated landmass will be centered and viewed with texture applied. A new texture can be applied via the following interface: public sub ApplyTexture(filename) User will be able to rotate around the landmass. The landmass should always be visible. Left click-drag will activate the rotation of 1) the object or 2) the camera around the object; whichever is easier. Right click-drag will control zoom. The previewd landmass should be contained within a form so that a standard interface can be developed around it. Three lights will be in the scene. A standard sub will allow modification of these lights. Interface is as follows. Shadowcasting optional but preferred. public sub AdjustLight(light#, brightness, shadowcasting) A restore default sub will exist to return the camera to its default position should the user become disoriented. Interface is as follows: public sub RestoreDefaultView() A sub will be available for scaling the landmass height. From a provided image, a landmass might be generated with an arbitrary height of, for example, 2 units. The sub will accept a new height of x meters and scale the height of the landmass accordingly. Interface is as follows: public sub LandmassHeight(units) Note: Several landmass and texture images will be provided for the purposes of testing and development. These test images will enable you to fully test the required functionality. When do we accept the project? 1) Implementation of features named above. 2) All code is documented; two or three sentences for complex routines. 3) Runs on Win 98, ME, XP, 2000. NT if possible. 4) Our own arbitrary testing images yield expected results. 5) Proper error handling with a focus on recovery rather than aborting with "contact system administrator" type errors. 6) Provided coding guidelines/naming conventions are observed. Complete and fully-functional working program(s) in executable form as well as complete source code of all work done. Complete copyrights to all work purchased.
VB6, 2000, XP, 95, 98, ME. NT if possible. Do not use any 3rd party DLLs or code that isn't your own.