Dark Source
Dark Source

Dark Source

Dark Source is a collection of nearly two hundred source code snippets that cover everything from simple math problems to advanced shader techniques. You can use the browser that accompanies this product to search through the snippets quickly and easily, and even search for keywords within any snippet to find what you are after immediately. Also, as Dark Basic Pro updates are released, more snippets will be placed in the ProjectsSnippets folder to demonstrate any new commands and features introduced.

All of the snippets included in this collection have been programmed by Dark Basic Pro's main developer Lee Bamber.

"Your codes in Dark Source are just Knock Out, seen things in there that I didn't think that it could do...Best Buy I have seen for the small amount of money." - DarkSOURCE User

Dark Source
Special Offers

There are currently no special offers containing this product.

Order Online
Dark Source

Dark Source is a collection of nearly two hundred source code snippets that cover everything from simple math problems to advanced shader techniques.

  $ Dollar € Euros £ Sterling Click to Buy
Price: $9.99 €7.99 £6.99 Click here to buy

Dark Source is distributed electronically.
You must download this product. Download instructions are sent after purchase.

Snippet List

This list contains a brief description of all the snippets included in Dark Source:

  • 3DPointPosition - find a 3D position from a pointing object
  • 3DSoundCircle - place a sound in 3D space
  • AlienDemo - load and animate an alien model
  • AlternativeBumpMapping - apply a bump map to a sphere
  • AmbientLight - change the colour of ambient lighting
  • AnimatedSprite - create an animated sprite from an image sequence
  • AnimationFrameNumbers - load a model and manually scroll through its frames
  • AnySpeedMachine - demonstrates how to create machine independent timing for games
  • ApplicationWithOwnIcon - how to load and apply an icon to your executable
  • AReliefMapper - applies a parallax relief mapper to a cube object
  • AttachMediaToProject - shows how media can be attached to a DBP project
  • AutomaticCollision - demonstrates how automated collision is used
  • BigAndLittleEndians - converts endians from one format to the other
  • BoneAnimInHardwareTest - applies a bone animation shader to a model
  • BoneAnimInterpolation - demonstrates how to interpolate between two frames
  • BoneCollision - shows how to detect collision against moving limbs
  • BubbleSort - performs a bubble sort to arrange a list of items into order
  • BuiltInEffectsOnBoneModels - applies shader effects to an animating model
  • BumpMapMan - shows how low polygon model + bump produces high polygon result
  • BumpViewer - experiment on bump mapping a zombie model
  • CameraImageAlpha - shows how to create a camera that retains alpha data during rendering
  • CameraToObjectToCamera - shows how the orientation commands can be used
  • ChangeMemblockMesh - shows how to change a mesh using memblocks
  • ChangeTexturedMesh - shows how to use the change mesh command
  • ChatRadio - uses multiplayer commands to create a simple CHAT program
  • CheckDXWithoutDXInstalled - shows how to detect whether DirectX is installed
  • CheckModelLimbs - reveals the limb hierarchy of a loaded model
  • ColorValues - generates and saves out DWORD representations of RGB colours
  • CommentsInTypes - shows how you can place comments in types
  • ConstantUsage - shows how to use a constant variable in your program
  • CopyOneHTMPageToManyHTM - copies a master HTM file to many existing HTM files
  • CreateChartOfLogTime - parses a file and produces a visual chart of the results
  • CreateFoldersAndFilesFromList - takes relative filenames and creates its folder structure
  • CSG - demonstrates use of CSG against 3D objects (cutting them up)
  • CSGEffects - shows how to apply CSG to a staircase model
  • Custom3DCube - shows how to modify UV and NORMAL data of a default cube object
  • DangeroudDotUsage - shows how not to use the DOT command
  • dbpaint - small paint program written by Malcolm Bamber (BETA)
  • DBProTerrainEditorExport - shows how to load and use an export from TED
  • DeadReckoningSpline - demonstrates how to calculate dead reckoning against spline movement
  • DeadReckoningSpline3D - applies dead reckoning using 3D vectors
  • DebuggerShowingStrings - run this program to test string reporting in the debugger
  • DeleteArrayElement - shows how to delete an element from the unified array system
  • DeleteImageFromObject - apply and then remove a custom texture to an object
  • DeleteOneThousandObjects - trick to delete many objects very fast
  • DetectOlderFile - shows how to extract the full date from any file
  • DifferentBetweenEulerAndFreeFlight - compares euler and free flight handling
  • DrawSoundDataFromFile - draws the sound data visually to see how the WAV file looks
  • DX9Shaders - great collection of shaders to make your DBP programs look amazing
  • DX10Pipeline - streamline use of shaders to create a DX10 looking final render
  • EnclosedAreaVisibility - calculates whether areas on a map are enclosed or not
  • EncryptAndCompressBMP - a DBP projects can auto-compress and encrypt media
  • EulerVsFreeFlight - demonstrates simple euler and free flight rotation
  • EverybodyLikesBloom - implements a simple BLOOM shader and final render
  • ExcludeLimbExample - shows how to exclude limbs and list only on-screen objects
  • FadeObject - simply fades object down to zero
  • FastTextEntry - demonstrates how to accept fast entered text using buffering
  • FieldOfView - shows how to adjust a camera field of view
  • FileMapping - sends and retrieves a value and a string using the filemap
  • FillACircle - generates a filled circle using 2D commands
  • FireEffects - shows how to create animations from a series of still JPG images
  • FireParticleEmissions - shows how to create fire using the particle commands
  • FlameMaker - fire effect using a series of TGA images
  • FlyingCameraTracking - make the camera fly around using arrow keys
  • FollowCamera - make the camera follow an object
  • FreeFlightAndEulerCamera - test free flight rotation commands on one axis
  • FreeFlightShark - test free flight rotation commands on three axis
  • GameTrakApplication - detects and uses any GAME TRAK devices installed
  • GenerateMailshotFiles - generate many files from one main template
  • GetImageRetainsNewMipmap - demonstrates how mipmaps are automatic in DBP
  • GetLimbNames - shows the limb names of a loaded model
  • GetObjectSizes - shows the X Y and Z sizes of a loaded model
  • GetSpriteSize - demonstrates how to get the size of a sprite back after modification
  • GhostCamera - textures an object using an image generated from a second camera
  • GhostsInFog - ghosting of objects while buried in fog
  • GlassEffectOwntexture - shows bump and glass shader applied to wall object
  • GlueObjectToObject - shows how to glue two objects together
  • GoodSkyClouds - parallax based sky cloud cover technique
  • GrabbingRotatedSprites - rotate a sprite and grab the result and store it
  • ImpressiveShader - implements a cartoon shader on an object
  • IncrementingFloatArrays - creates a float array (real values) and displays the result
  • IndependentLimbRotation - changes the local rotation of limbs in a simple program
  • InfiniteDynamicLights - creates a large number of lights, and renders only the closest
  • InstanceOfObject - shows how to create an instanced object
  • InternationalFont - demonstrates setting and printing international fonts
  • InterpolateBetweenTwoFrames - interpolates between two frames of a loaded model
  • IntersectObject - casts a ray line through a 3D scene and reports when it intersects an object
  • IntersectObjectOnBoneAnimatedModel - intersect a ray cast with software animating model
  • IntersectObjectTilter - tests the intersection of a ball to a floor object
  • JapaneseFontExample - shows how to set and draw Japanese text
  • KeyStateCheck - program to grab key state values and record them on screen
  • LightMappingDemo - shows how to use the blend mode command
  • LimbPositionFromGluedObject - gets the world limb position from a glued object
  • LineMaker - simple rubber band expandable bound box technique
  • LoadFPSCLevel - code to load a typical FPSC level without entities (just the static)
  • LoadingADBOWithModulate2X - shows how to keep the material information when loading models
  • LockVertexData - shows how to lock vertexdata from an existing object
  • LotsOfSmokeDecals - use vertexdata commands to animate smoke
  • MakeAMesh - create a mesh using memblocks
  • MakeHoleInCube - use CSG commands to cut a hole into a default cube object
  • MakeImageFromMemblock - make an image from a section of memblock data
  • MakeMemblockFromCamera - grab the contents of a camera render to a memblock
  • MeasureHeightOfModel - measures the height of a loaded 3D object
  • MeshBlockingPortal - simple portal detector to see if a side is missing in a node
  • ModifyAMesh - uses a memblock to modify a mesh
  • MouseWheel - detect the value returned from the mouse wheel (Z axis)
  • MoveFoldersBackOneStep - takes contents of all folders and moves them to root folder
  • MultipleMusic - program to trigger multiple music tracks running side by side
  • MuzzleFlashThirdPerson - experiment to create a muzzle flash effect
  • NewEntryCommandMode - allows you to enter text at high speed without losing characters
  • NewLimbCollision - demonstrates limb collision commands
  • NewReliefMapper - simple and effective relief mapper shader applied to an object
  • NewSyncMask - uses SYNC MASK command to render only to specific cameras
  • NoTextureFilter - demonstrates texture filtering side by side with non-filtering
  • ObjectsInScreen - shows how the object in screen command works
  • OrientationAfterPivot - shows use of orientation command after pivot command applied
  • OwnKeyboardEntrySystem - simpe custom text entry system
  • PelicanDemo - shows a simple visual demo that uses no shaders, just camera capture
  • PerfectFadeTransition - implements a full screen fade transition
  • PerformingNOTOperations - shows how to perform a NOT operation
  • PickCylinderObject - creates a cylinder and detects when the user clicks it
  • PickObjectExample - shows how to grab and drag around an object on screen
  • PlayDVDVideoInGame - shows how to play a DVD movie inside your application
  • PlayerCarWorldCollision - demonstrates basic player collision
  • PointObjectLookingDown - shows how extreme angles can cause issues when pointing camera
  • PolygonCollisionWithXFile - custom polygon collision with X file models
  • PrecisionUnderstanding - shows how precision values are printed to the screen and why
  • ProjectWithCustomIcon - shows how to create a DBP project with a custom icon
  • ReDimADynamicArray - shows how to recreate an array without losing its contents
  • ReflectedSphere - demonstrates how to apply reflection shading
  • ReflectiveSkies - uses skies to populate cube maps for environmental mapping
  • ReflectiveWaterPlane - uses built-in reflection shading to create a water effect
  • RenderToImage - shows how to render a camera to an image
  • ReplaceINPUTwithENTRY - demonstrates the use of the ENTRY$() command
  • RGBColors - test RGB colours in a simple program that draws them
  • RotateASprite - small program to create an image and rotate it as a sprite
  • RotateMe - shows how to rotate an object on each axis
  • RotationOrder - shows how rotation order affects the final visual of the object
  • SaveAndLoadExample - demonstrates how to save an object then load it back
  • SaveArrayAsMemblock - save array data inside a memblock
  • ScalingANormal - shows how to scale a normal stored in an object
  • SeamlessLava - experiment to recreate flowing lava using a shader by Green Gandalf
  • SeeCrateChunk - a collection of crate and barrel fragments used for explosions
  • SelectPointOnSphere - demonstrates how to select a point on a sphere
  • SelfShadowingAnimations - uses built-in shadowing to cast self shadows
  • SetDisplayMode - demonstrates the use of the SET DISPLAY MODE command
  • SetObjectDiffuse - modifies an objects FVF to include DIFFUSE then changes the colour
  • ShadowShader - alien model being used to cast a high resolution real-time shadow
  • ShiftingAMatrix - shows how to scroll a matrix using the shift commands
  • ShinyGlassAndMetal - highly visual scene without the benefit of shaders
  • ShinyObject - creates a shiny statue visual using the built-in specular commands
  • ShowNewU5Commands - shows off new techniques introduced with upgrade 5.0
  • SimpleAutomaticCollision - tests the automatic collision system in DBP
  • SimpleBloomShader - great visual demo of reflection and bloom shading
  • SimpleCartoonObject - shows a simple built-in cartoon shader effect
  • SimpleDialogBox - a custom dialog box offering basic controls to the user
  • SimpleLeftClickRightPopup - simple pop-up system using custom implementation
  • SimpleSendImageOverNetGame - send and receive an image over the multiplayer commands
  • SketchUpInDBPro - loads a 3DS model created in SketchUp 5.0
  • SlidingCollision - demonstrates how to create sliding collision in DBP
  • SpecialEffects - shows how to use the shader effect commands
  • SpeedOfVariousLoops - tests the speed of various methods of creating code loops
  • SphereMapping - demonstrates how to use the built-in spherical mapping command
  • SplineDraw - calculates a CATMULROM spline for curved edges from control points
  • SpriteDiffuse - shows how to change the diffuse color of a default sprite
  • SpriteImage - shows how to change the image of a sprite
  • SpritesWithSemiTransparencyAlpha - loads in an image that already has alpha data inside it
  • StandaloneVsSharedVertexBuffers - shows how to use the set global object creation command
  • StereoscopicCameras - shows how to render anaglyph and iZ3D stereoscopic displays in DBP
  • SwitchOffScreenClipping - shows how to switch off the screen clipping system
  • SyncRate - demonstrates how the SYNC RATE command works and measures it
  • TerminateAfterDate - small piece of code which you can use to restrict your demo to a date
  • TestActiveApp - demonstrates how to use the ALWAYS ACTIVE ON and OFF commands
  • TestChineseText - shows how to set and print Chinese text to the screen
  • TestSetCameraToImage - grabs a camera image and saves it out
  • TextureAMatrix - shows how to texture a matrix object
  • TextureFilteringWithSky - how to create, texture and render a sky with filtering
  • TileBlur - demonstrates how to load an image and blur the contents, then save it out
  • TilingAMatrix - texturing a matrix with a four by four tile texture
  • UndoRedoList - implements a simple UNDO REDO system using an array
  • UniversalLoadToScale - one technique to scale your game geometry to a standard sizing
  • UsingAdvancedTerrainReference - Uses AdvancedTERRAIN to create a simple terrain
  • UsingDiffuseToShadeAPlane - manipulates the diffuse component of an object for visuals
  • UsingNormalization - demonstrates how and why SET NORMALIZATION ON command is used
  • UsingQueues - demonstrates the unified array system which includes lists and queues
  • UsingReflectionShading - shows how best to use the built-in reflection shader
  • UV Texture Rotation - takes the UV data of a plane and rotates it for visual effect
  • ViewCollisionCenterOfMesh - shows the actual collision center of a mesh
  • ViewerToolForReliefMapping - loads a model, applies a relief map for visual inspection
  • ViewFPSCModelAnimation - loads and plays FPSC animation file, reporting frame number
  • ViewLimbsAndNames - interogates an object and prints out all limb names visually
  • VisualDemo - cool demo combining a number of visual effects and music to finish it off
  • WaterEffect - water effect demo using a variety of media to create the visual
  • WaveShader - heavy use of 3D MATH commands to change shader constants and variables
  • WaypointsIn3D - experiment to create 3D waypoints system for inclusion into FPS Creator
  • WindowControl - code to find a window and switch focus to it
  • WriteWORDDataToFile - Write WORD data type element values to a file