I'll get started on that.
Most of the features will be disabled for security reasons though.
Will edit when complete.
Cheers,
-db
[edit]
Enjoy.
[/edit]
[edit2]
Most commands have been disabled.
Stick mainly to the d3d based commands.
Here is the INI
INITADDITIONS=main.htm=*No Parameters* - Initialises the additions pack
MAKECUBE=main.htm=(size#) ;Returns object id - Dynamically create a cube
MAKECONE=main.htm=(size#) ;Returns object id - Dynamically create a cone
MAKECYLINDER=main.htm=(size#) ;Returns object id - Dynamically create a cylinder
MAKESPHERE=main.htm=(size#) ;Returns object id - Dynamically create a sphere
MAKEPLAIN=main.htm=(width#, height#) ;Returns object id - Dynamically create a plain
LOADOBJECT=main.htm=(filename$) ;Returns object id - Dynamically load an object
DELETEALLOBJECTS=main.htm=*No Parameters* - Delete all the objects currently existing
MAKEMATRIX=main.htm=(width#,height#,xtiles,ztiles) ;Returns matrix id - Dynamically create a matrix
SAVEMATRIX=main.htm=filename$, matrixId - Save a matrix to a file, for later loading
XPOSITIONOBJECT=main.htm=objectId, xpos# - Position an object, across the X axis only
YPOSITIONOBJECT=main.htm=objectId, ypos# - Position an object, across the Y axis only
ZPOSITIONOBJECT=main.htm=objectId, zpos# - Position an object, across the Z axis only
FORCECULL=main.htm=*No Parameters* - Force the culling system to take effect
UPDATECULLSYSTEM=main.htm=*No Parameters* - Updates the culling system
MAKEOBJECT=main.htm=(meshId, imageId) ;Returns object id - Dynamically make an object from a mesh and image
LOADMESH=main.htm=(filename$) ;Returns mesh id - Dynamically load a mesh
LOADIMAGE=main.htm=(filename$[,textureFlag]) ;Returns image id - Dynamically loads an image
MAKEMESHFROMOBJECT=main.htm=(objectId) ;Returns mesh id - Dynamically creates a mesh from an object
CONTROLOBJECTUSINGARROWKEYS=main.htm=objectId, speed#, turn# - Control an object using the arrowkeys
CONTROLOBJECTUSINGWASD=main.htm=objectId, speed#, turn# [, strafe] - Control an object using the arrowkeys, optionally specifying if the object should strafe
SETOBJECTAUTOCULL=main.htm=objectId, cullState - Sets an objects auto culling state for the DAP culling system
CULLOBJECT=main.htm=objectId - Control the culling of a single object, despite any other setting in the automatic culling system
CULLGROUP=main.htm=startObjectId, rangeOfObjects - Control culling of a specified range of objects, starting at the startObjectId, going to the sum of startObjectId and rangeOfObjects
CONVERTMATRIXTOOBJECT=main.htm=(matrixId) ;Returns object id - Convert a matrix into an object
CONTROLCAMERAUSINGWASD=main.htm=[cameraId, ] speed#, turn# [, strafe] - Control a camera using the arrowkeys, optionally allowing for strafing
MAKECAMERA=main.htm=(*No Parameters*) ;Returns camera id - Dynamically create a camera, automatically coloring the backdrop to the default 3d blue
MAKEMEMBLOCK=main.htm=(Size) ;Returns memblock id - Dynamically create a memblock, specifying the size
GETDWORDSIZE=main.htm=(*No Parameters*) ;Returns integer - Retrieve the size, in bytes, of a DWORD
GETFLOATSIZE=main.htm=(*No Parameters*) ;Returns integer - Retrieve the size, in bytes, of a float
GETINTEGERSIZE=main.htm=(*No Parameters*) ;Returns integer - Retrieve the size, in bytes, of an integer
FPSCAMERA=main.htm=[*No Parameters*]/[cameraId] - Control a camera like a first person shooter camera
TURNOBJECTINTOITEM=main.htm=objectId - Turn an object into an item
TURNITEMINTOOBJECT=main.htm=objectId - Turn an item back into a normal object
OBJECTISITEM=main.htm=(objectId) ;Returns integer - Retrieve rather or not an object is set as an item
CONTROLITEMOBJECT=main.htm=objectId - Control a single object, if it is set as an item
UPDATEITEMS=main.htm=*No Parameters* - Control all item objects in one call
CENTERMOUSE=main.htm=*No Parameters* - Centers the mouse into the middle of the main dbp window
XPOSITIONCAMERA=main.htm=[cameraId, ] pos# - Position the camera on the X axis
YPOSITIONCAMERA=main.htm=[cameraId, ] pos# - Position the camera on the Y axis
ZPOSITIONCAMERA=main.htm=[cameraId, ] pos# - Position the camera on the Z axis
DISTANCE=main.htm=(x1#, x2#, y1#, y2#, z1#, z2#) ;Returns float - Retrieve the distance between 2 3d points
QCPRESENTATIONINTERVALS=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXTEXTUREWIDTH=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXTEXTUREHEIGHT=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXVOLUMEEXTENT=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXTEXTUREREPEAT=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXTEXTUREASPECTRATIO=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXANISOTROPY=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXVERTEXW=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXTEXTUREBLENDSTAGES=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXSIMULTANEOUSTEXTURES=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXACTIVELIGHTS=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXUSERCLIPPLANES=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXVERTEXBLENDMATRICES=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXVERTEXBLENDMATRIXINDEX=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXPOINTSIZE=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXPRIMITIVECOUNT=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCVERTEXINDEX=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXSTREAMS=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXSTREAMSTRIDE=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCVERTEXSHADERVERSION=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXVERTESSHADERCONST=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCPIXELSHADERVERSION=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCPIXELSHADER1XMAXVALUE=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXNPATCHTESSELLATIONLEVEL=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMINANTIALIASEDLINEWIDTH=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXANTIALIASEDLINEWIDTH=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXVSHADERINSTRUCTIONSEXECUTED=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXPSHADERINSTRUCTIONSEXECUTED=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXVERTEXSHADER30INSTRUCTIONSLOTS=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QCMAXPIXELSHADER30INSTRUCTIONSLOTS=main.htm=(*No Parameters*) ;Returns integer - Flag to queryCapability
QUERYCAPABILITY=main.htm=(capabilityId) ;Returns dword, or float - Query a capability of the 3d hardware, capability flags are denoted with "qc"
D3DCREATEVERTEXBUFFER=main.htm=(size) ;Returns vertex buffer id - Create a vertex buffer
D3DDESTROYVERTEXBUFFER=main.htm=vertexBufferId - Destroy a vertex buffer
D3DVERTEXBUFFEREXIST=main.htm=(vertexBufferId) ;Returns integer - Checks if a vertex buffer exists
D3DVERTEXBUFFERSIZE=main.htm=(vertexBufferId) ;Returns dword - Retrieve the size of a vertex buffer (in bytes)
D3DINITUPDATEBUFFER=main.htm=vertexBufferId - Initiate the update buffer
D3DSETUPDATEBUFFER=main.htm=index, x, y, z, diffuse - Set the properties of a vertex in the update buffer
D3DGETUPDATEBUFFERX=main.htm=(index) ;Returns float - Retrieve the X value from a vertex in the update buffer
D3DGETUPDATEBUFFERY=main.htm=(index) ;Returns float - Retrieve the Y value from a vertex in the update buffer
D3DGETUPDATEBUFFERZ=main.htm=(index) ;Returns float - Retrieve the Z value from a vertex in the update buffer
D3DGETUPDATEBUFFERDIFFUSE=main.htm=(index) ;Returns dword - Retrieve the DIFFUSE value from a vertex in the update buffer
D3DSENDUPDATEBUFFERTOVERTEXBUFFER=main.htm=vertexBufferId - Copy the contents of the update buffer into the vertex buffer
D3DDEINITUPDATEBUFFER=main.htm=*No Parameters* - De initialise the update buffer clearing all of its contents
D3DSETSTREAMSOURCE=main.htm=vertexBufferId - Prepare a specific vertex buffer for rendering
D3DDRAWPRIMITIVE=main.htm=typeOfPrimitive, startIndex, endIndex - Draw a specific set of vertices from the prepared vertex buffer
D3DGETDEFAULTFVF=main.htm=(*No Parameters*) ;Returns DWORD - Retrieve the default FVF, best used for d3dSetVertexShader
D3DSETFVF=main.htm=fvfType - Set the current FVF to use for rendering
D3DCLEAR=main.htm=Color - Clear the Direct3D Back buffer contents
D3DBEGINSCENE=main.htm=*No Parameters* - Begin the rendering of the Direct3D Scene
D3DENDSCENE=main.htm=*No Parameters* - End the rendering of the Direct3D Scene
D3DPRESENTSCENE=main.htm=[WindowHandle] - Present the scene to the main dbp window, or, optionally, present the scene to a differant window
GETMAINHWND=main.htm=(*No Parameters*) ;Returns a window handle - Retrieve the handle (HWND) to the main darkbasic professional window
D3DENABLEANTIALIASING=main.htm=*No Parameters* - Enable antialiasing
D3DDISABLEANTIALIASING=main.htm=*No Parameters* - Disable antialiasing
D3DENABLEHARDWAREVERTEXPROCESSING=main.htm=*No Parameters* - Allow the GPU to take care of vertex processing, instead of the CPU
D3DDISABLEHARDWAREVERTEXPROCESSING=main.htm=*No Parameters* - Allow the CPU to take care of vertex processing, instead of the GPU
OPENCONSOLE=main.htm=message$, title$ - Open up the in-window console
CLOSECONSOLE=main.htm=*No Parameters* - Close the in-window console
CONSOLEOPEN=main.htm=(*No Parameters*) ;Returns integer - Retrieve rather or not the console is open
GETCONSOLECOMMAND=main.htm=(*No Parameters*) ;Returns string - Retrieve the command entered in the console
GETCONSOLEBUFFER=main.htm=(*No Parameters*) ;Returns string - Retrieve the current command buffer, despite rather its ready to be given or not
SETCONSOLETITLE=main.htm=title$ - Set the title for the console
GETCONSOLETITLE=main.htm=(*No Parameters*) ;Returns string - Retrieve the title for the console
CONSOLEINPUTGIVEN=main.htm=(*No Parameters*) ;Returns integer - Retrieve rather or not the console is ready to have its command given
CONSOLEINFOCUS=main.htm=(*No Parameters*) ;Returns integer - Retrieve rather or not the console is in text giving focus
UPDATECONSOLE=main.htm=*No Parameters* - Update the console, required for it to work correctly
Despite what it says, you do not need to call "initAdditions" at the start of your program, any more. It is optional now.
[/edit2]
[edit3]
Some more work has been done on the editor.
Texture blending, etc, is ALMOST ready.
Made some nice extra visual effects.
It now renders to a seperate window as well..... Virtually no frame rate loss.
It has been speed up as well.
[/edit3]
Cheers,
-db
Enter my forums
here.