Repository navigation
Differences
Narta Xaymar Dirks edited this page Nov 2, 2026
·
95 revisions
Where BlitzLLVM can not behave like Blitz3D or BlitzPlus, because the system they were made for is gone, or where it does more than they did, this is how it behaves instead.
This page is made from the pages it links to (see tools/wiki/wiki.py), so it is not edited by hand: a command lists its differences with @gap in its text file, and a difference that no single command causes gets a page in tools/wiki/pages/ with a line @difference and a one sentence summary.
Differences that are not caused by one command.
-
3D Studio models: Extension:
LoadMeshandLoadAnimMeshalso read.3dsfiles. -
Asynchronous loading: Extension:
AsyncLoadingmakesLoadTexture,LoadImage,LoadMeshandLoadAnimMeshdecode on other threads, andTextureReady,ImageReadyandEntityReadysay whether something is done. -
blitz-format: Extension:
blitz-formatformats.bbsource code (indentation, keyword case, spacing, blank lines, line endings) from a.blitz-formatfile; the original has no formatter. -
Blitz-Tidy: Extension:
blitz-tidyfixes the warnings ofblitzccin Blitz source files; the original has no such tool. -
Color depth: The depth argument of
GraphicsandGraphics3Ddoes not pick a display mode: it picks what the buffers are made of (8, 12, 15, 16, 24, 30, 32 or 64), and the window always shows RGBA8. The 8-bit palette mode has a palette thatGraphicsPalettesets, andWBufferdoes nothing.Ditheradds noise of one step of the buffer. - Colors: 3D color commands take floats from 0 to 255 and vertex colors are 16-bit floats.
-
Console window on Windows: Programs are GUI programs and use the terminal they were started from;
blitzcc --consolemakes a console program. -
CPU features: Extension: the runtime finds out which optional CPU instruction sets exist, and the environment variable
BLITZLLVM_CPUlowers what it may use. -
Culling: Extension:
CameraCullingandCameraCullingSourcechoose what is left out of the picture before it is drawn. The picture is the same. -
Debug handle checks: Extension: a program compiled with
-dstops with an error when a command is given a handle that names nothing, and always loads and saves on the spot. - Depth buffer: The depth buffer is a reversed 32-bit float, so z-fighting is much rarer.
-
DirectX models: Damaged files: a
.xfile that ends or breaks in the middle of an object loads what is before the damage (with a warning on the console) instead of failing. - Displays: Extension: commands for every connected display and its modes.
- DPI scaling on Windows: Programs on Windows are DPI aware: Windows does not scale their windows, so one pixel of the program is one pixel of the screen at any scaling.
-
Fullscreen: Fullscreen (mode 1 of
GraphicsandGraphics3D) is a borderless window over the main display that keeps the aspect ratio of the picture, instead of changing the video mode of the display. -
glTF models: Extension:
LoadMeshandLoadAnimMeshalso read glTF 2.0 files, andLoadTextureandLoadImageread the pictures inside them. - Image formats: Picture files: JPEG 2000 is not read, TIFF only without Deflate or JPEG compression, but WebP, AVIF, JPEG XL, DDS and several other formats are.
- IPv6: The network commands also work over IPv6, and have text versions of the commands that use an address as a whole number.
-
Language: A
Constthat holds a Float or a String can not be used in aDatavalue yet, only a Const that holds an integer. -
Large Meshes: Extension: a surface can hold more than 65535 vertices, where the original crashes in
RenderWorld. - Lost graphics device: Extension: a graphics device that is lost (a driver crash, a GPU reset) is made again, and a device that keeps getting lost within a few minutes ends the program with an error.
- Many lights: Extension: up to 127 lights can exist in a scene, and each draw is lit by the eight that affect it the most; the original lights everything with the first eight.
- Memory: Extension: programs allocate from the runtime's own allocator, which cuts small blocks out of large spans instead of asking the system for each one; the original uses the Windows heap.
- Mip maps: Flag 8 textures get trilinear filtered mip chains, and anisotropic filtering can be turned on with a sampler, which the originals could not.
- Movie controls: Extension: movies can be paused, and the commands for that build on the original movie commands.
- Multiplayer: Multiplayer uses TCP on port 40500 instead of DirectPlay, so games only play with other BlitzLLVM games.
-
Number suffixes: Extension: a suffix behind a number (
255ui8,5000000000i64,1.5.h,0.1.d) picks its exact type, and a whole number that does not fit 32 bits has to carry one. -
Numbers of other sizes: Extension:
Byte,Short,UInt,Long,Half,Doubleand the like, with conversions, saturating versions, bit functions and Double math. -
Parameter modes (In, Out, InOut): Extension: function parameters can be written as
In,OutorInOut, which decides if a value goes into the function, comes back out of it, or both. -
Presentation sync: Extension:
Flip 2syncs the picture with the display without making the program wait. - Samplers: Extension: samplers hold how a texture is read and can be shared between textures.
- Saving pictures: Extension: SaveBuffer, SaveImage and the new SaveTexture write PNG, JPEG, WebP, JPEG XL, TGA, DDS and BMP files with settings, mark them as made by the program, and can encode on another thread with AsyncSaving.
-
Scan Codes: Extension:
VKeyDownandVKeyHitask for a key by its SDL scancode, which every key has. -
Sound resampling: Sounds are resampled cleanly, so low rate sounds are duller;
BLITZLLVM_LEGACY_AUDIO_RESAMPLINGrestores the FMOD sound. -
Spherical fog: Extension:
CameraFogMode camera, 2fogs by the distance to the camera instead of the depth along its view direction; the original only has linear fog by depth. -
Sprite depth fade (soft edges): Extension:
SpriteDepthFadeandEntityDepthFadefade see-through sprites and entities out where they get close to solid geometry (soft particles); the original has no such command. - Sprite shapes: Sprites with a round or cut-out texture are drawn as the smallest octagon that the texture can be seen in, not as a square; the picture is the same within one level of a color.
-
The windows of BlitzPlus: Every window that
CreateWindowmakes on the desktop is a window of the operating system with a frame, a title bar and a thread of its own that shows it,Graphicskeeps a window of its own, and a program needs noGraphicsfor its windows. -
Types everywhere: Extension:
Byte,UByte,Short,UShort,UInt,Long,ULong,HalfandDoublework everywhere a type can be written. -
Userlib declarations:
.declsfiles take the long type names as well as the short ones, for all the new types. -
Warnings: Extension:
blitzcchas warnings with levels (-W0to-W4),-W<name>and-Wno-<name>options and-Werror; the original has none.
Commands that differ from the original or are not finished, with the first of the differences from the "Differences" part of their page.
- ActivateWindow: The window is raised the way the operating system allows, which on some systems only raises it among the windows of your program and does not take the focus from another application.
- ActiveObjects: Windows and gadgets are not counted here.
- ActiveWindow: There is no "none of ours is active" state: the answer is always the window of the program that was activated most recently, by the user or by ActivateWindow.
-
AddVertex:
wis ignored. - AnimateMD2: The official help gives 1 as the default first frame; frames are counted from 0 and the default is 0, in the engine as well as here.
- AntiAlias: The original handed the setting to the graphics driver, where it did nothing on most hardware of the time.
- AppTitle: The title is only used once a graphics mode is open.
- AsyncLoading 〔BlitzLLVM〕: With asynchronous loading on, a picture or model with a valid header that cannot be decoded raises its error when it is first used and not as a 0 from the load.
- AsyncSaving 〔BlitzLLVM〕: With asynchronous saving on, a file that can't be written (a folder that does not exist, a full disk) is not a 0 from the save command, but is counted by SavesFailed.
- AvailVidMem: The graphics card cannot be asked how much of its memory is still free.
- BackBuffer: FrontBuffer returns this same handle, because a program cannot draw to the picture on the screen.
- BrushTexture: Layers 0 to 7 are accepted.
- BSPAmbientLight: The original also lights the vertices of a level with point and spot lights, which have no effect on a level here.
-
BSPLighting: A level that has
lightentities is lit by them as point lights when lightmaps are off, instead of only by its vertex colors. - BufferDirty: Has no effect.
- Byte 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- ByteSwap 〔BlitzLLVM〕: Not in the originals.
- CameraFogMode: Mode 2 is an extension of BlitzLLVM; the original only knows 0 and 1, and a program that uses 2 does not behave the same with the original Blitz3D.
-
CanvasBuffer: The buffer has 32 bits of color (RGBA8) whatever depth
Graphicshas, and it is drawn to by the same renderer as the back buffer:Cls, the 2D commands,RenderWorld,CopyRect,ReadPixelandLockBufferwork in it the same way. - ChannelPan: Panning is done by turning down the opposite speaker, so the sound does not get louder when it is panned to one side.
- ChannelPitch: Changing the pitch also changes the speed, because the sound is resampled.
- ChannelPlaying: A handle of 0, which the play commands give when there is no sound device or the sound failed to load, is never playing.
-
ChannelVolume: A debug build (
-d) stops the program when the channel was never given out. - ClientHeight: The desktop is as big as the primary display (all of it, not only the area free of the task bar), where there is a display to ask.
- ClientWidth: The desktop is as big as the primary display (all of it, not only the area free of the task bar), where there is a display to ask.
- CloseMovie: Nothing , the same as the original.
- Collisions: Types outside 0 to 999, or a method outside 1 to 3, stop the program with a runtime error.
- CollisionTime: The official help says this is the time taken to calculate the collision.
- Confirm: The box is a message box of the operating system in front of the program's active window, not part of it.
- CopyPixel: A source pixel outside of its buffer is read as 0 (black), and a destination outside its buffer is skipped.
-
CopyPixelFast: A buffer that is not locked is ignored by a build without
-d, and stops a debug build (-d) with an error message. - CopyRect: Parts of the rectangle that lie outside of either buffer are cut off.
- CountDisplayModes 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- CountDisplays 〔BlitzLLVM〕: When SDL knows of no display, for example without a display driver, there is one display called "Default" with the common sizes of CountGfxModes.
- CountGfxDrivers: Every GPU that Vulkan reports is a driver, including software ones.
- CountGfxModes: The modes are the ones of the main display.
- CountHostAddresses: Not in the original, which only knows IPv4 (CountHostIPs).
- CountHostIPs: Only IPv4 addresses are counted, use CountHostAddresses for IPv6 too.
- CountRefreshRates 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- CreateButton: Buttons are drawn in the look of the program, not with the controls of the operating system.
- CreateCanvas: Canvases are drawn by the same renderer as the rest of the interface, so nothing needs DirectX.
- CreateComboBox: The user cannot type into it, only pick from the list.
- CreateHtmlView 〔BlitzLLVM〕: There is no web browser inside the window yet: the gadget is a frame that shows the address it was sent to, and no page is loaded.
- CreateImage: A graphics window must be open, because images live in video memory.
- CreateLabel: Gadgets without a font of their own are drawn with Tahoma at 12 pixels, or a similar font of the system (the built-in bitmap font when there is none).
- CreateListBox: Only one entry can be selected at a time.
- CreateListener: Volume falls off as 1 / (1 + rolloff * meters * 0.05), which is gentler than the curve of the original: the original (FMOD 3) is at full volume up to one meter and then falls off as meters ^ -rolloff, so at 20 meters with rolloff 1 it is at 5% where this runtime is at 50%.
-
CreateMenu: The shortcut underline for
&is accepted but menus are only used with the mouse and the arrow keys. - CreatePlane: Collisions and picks see the plane as one square 20000 units wide, so they miss it further out than that.
- CreateTabber: Gadgets created with the tabber as their group are drawn on it all the time, as in the original.
- CreateTCPServer: The server accepts IPv4 and IPv6 connections on the same port (where the system has IPv6), see IPv6.
- CreateTerrain: The original only accepts powers of two (32, 64, 128 and so on) and stops with a runtime error otherwise.
- CreateTextArea: Without wrapping, a bar along the bottom appears once a line does not fit.
- CreateTexture: Flag 4096 (render target) is new.
- CreateToolBar: The tool tips given with SetToolBarTips show below a button after the mouse rested on it for half a second.
- CreateUDPStream: The stream receives IPv4 and IPv6 messages (where the system has IPv6), see IPv6.
- CreateWindow: Every window on the desktop is a window of the operating system, with its frame and title bar, so flag 1 only says whether the window has them, and the user moves, sizes, minimizes and maximizes it the way the system does.
- DebugObjects: The list covers banks, streams, sounds, images, textures, fonts, timers and your own types, but no windows or gadgets.
- Desktop: The windows are windows of the operating system on the desktop of the computer, whose size ClientWidth and ClientHeight tell.
- DesktopBuffer: Drawing on, or reading from, the desktop does not work: it is a buffer of one black pixel that starts over every time this is called, so the screen of the computer is never touched and nothing shows behind the windows.
- DirectInputEnabled: There is no DirectInput on this platform.
- DisplayDepth 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- DisplayHeight 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- DisplayModeDepth 〔BlitzLLVM〕: A display or mode number that does not exist gives 0 instead of stopping the program, unlike GfxModeWidth.
- DisplayModeHeight 〔BlitzLLVM〕: A display or mode number that does not exist gives 0 instead of stopping the program, unlike GfxModeWidth.
- DisplayModeRefreshRate 〔BlitzLLVM〕: A display or mode number that does not exist gives 0 instead of stopping the program, unlike GfxModeWidth.
- DisplayModeWidth 〔BlitzLLVM〕: A display or mode number that does not exist gives 0 instead of stopping the program, unlike GfxModeWidth.
- DisplayName 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- DisplayRefreshRate 〔BlitzLLVM〕: A display that does not tell its refresh rate is taken to have 60 Hz.
- DisplayScale 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- DisplayWidth 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- DisplayX 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- DisplayY 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
-
Double 〔BlitzLLVM〕: Not in the originals, which only have the 32-bit real (
Float). - DrawBlockRect: Only the part that lies inside the frame is drawn.
- DrawImage: A frame number that does not exist stops the program with an error message.
- DrawImageRect: Only the part that lies inside the frame is drawn.
- DrawMovie: Draws the newest picture whose time has come, stretched to the size given (smooth, not pixel by pixel).
-
EmitSound: A debug build (
-d) stops the program when the sound is 0 (a sound that failed to load) or does not exist, other builds ignore the command, see Debug handle checks. - EnableDirectInput: Only the value is remembered so that DirectInputEnabled can report it.
- EndGraphics: The original opens a new window of the default size, or a console.
- EntityDepthFade 〔BlitzLLVM〕: The original has no such command.
- EntityLighting: Not in the original: lighting is always per vertex there.
- EntityStatic 〔BlitzLLVM〕: The original has no such command.
-
EntityTexture: A debug build (
-d) stops the program when the texture is not 0 and does not exist, see Debug handle checks. - Flip: Without a graphics window nothing happens.
- FlipCanvas: The window of the canvas is drawn and handed to the thread that shows it right away, so a program that never waits for events still shows its canvases.
- FlushJoy: Buttons that are currently held are not released.
- FlushKeys: The Device argument is a BlitzLLVM extension: the original has no such argument and only knows one keyboard.
- FlushMouse: The Device argument is a BlitzLLVM extension: the original has no such argument and only knows one mouse.
- FontHeight: The height is the height that was requested, as with Windows fonts.
- FontWidth: Real fonts have a different width for each character, so this is the width of the widest one; use StringWidth for a text.
- FormatTextAreaText: Underline and strike-through are not supported, as in the original.
- FreeFont: A font that does not exist stops the program with an error message.
- FreeImage: Freeing a handle that is 0 or was already freed does nothing, while other commands stop with an error when they get such a handle.
- FreeSound: Using the handle of a sound that was freed stops the program with an error message, while 0 is accepted and ignored.
- FreeTexture: ActiveTextures keeps counting a freed texture until the last entity or brush that uses it is gone.
-
FrontBuffer: The original returned a separate front buffer, so
SetBuffer FrontBuffer()drew directly to the screen without a Flip. - GammaBlue: The tables change what the window shows and never the gamma of the display, see SetGamma.
- GammaGreen: The tables change what the window shows and never the gamma of the display, see SetGamma.
- GammaRed: The tables change what the window shows and never the gamma of the display, see SetGamma.
- GetBrushTexture: A layer without a texture gives 0.
- GetHostAddress: Without a call of CountHostAddresses the addresses of this computer are used.
- GetJoy: Up to 32 buttons per joystick are supported, and a joystick with more reports only the first 32.
- GetKey: The queue holds 64 characters, and the oldest ones are dropped when it is full.
- GetMouse: Buttons 4 and 5 (the back and forward buttons) are a BlitzLLVM extension.
-
GetMovieTexture 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - GetSurfaceBrush: A surface that was never painted gives a plain white brush.
- GetTCPStreamAddress: Not in the original, which only knows IPv4.
- GetUDPMsgAddress: Not in the original, which only knows IPv4.
- GetUDPStreamAddress: Not in the original, which only knows IPv4.
- GfxDriver3D: A GPU can unless it does not do Vulkan 1.3 or has no queue that draws, which is 0.
- GfxDriverCaps3D: It always reports 100: there are no cube maps, the texture flag for them is accepted and ignored.
- GfxDriverName: The name is the one that the GPU reports to Vulkan, such as "NVIDIA GeForce RTX 4080 SUPER".
- GfxModeDepth: A mode number that does not exist stops the program with an error message.
- GfxModeExists: A 0 for the width or height means "anything fits", like in BlitzPlus.
- GfxModeFormat: Always 4, as the window is always 32 bit.
- GfxModeHeight: A mode number that does not exist stops the program with an error message.
- GfxModeWidth: A mode number that does not exist stops the program with an error message.
- GrabImage: Parts that lie outside of the buffer are not copied and keep what the frame had before.
-
Graphics:
Graphicsis the same command as Graphics3D: there is no 2D-only mode, so the 3D commands work afterGraphicsas well. -
Graphics3D: Unlike in Blitz3D, mode 0 always opens a window, and
GraphicsandGraphics3Dare the same command. - GraphicsDepth: It is the depth of the buffers that Graphics or Graphics3D made: 8, 12, 15, 16, 24, 30, 32 or 64, and 32 if the depth that was asked for is none of these.
- GraphicsFormat: Always 4.
-
Half 〔BlitzLLVM〕: Not in the originals, which only have the 32-bit real (
Float). - HidePointer: BlitzPlus lets the pointer be hidden per canvas; here the canvas is accepted and ignored, as there is only one window pointer.
- HostIP: Without a call of CountHostIPs the addresses of this computer are used.
- HtmlViewEventURL 〔BlitzLLVM〕: Always an empty text, as links cannot be clicked.
- HtmlViewRun 〔BlitzLLVM〕: The script is not run, as there is no page.
- HtmlViewStatus 〔BlitzLLVM〕: Always 0, as no page is ever loaded or loading.
- HWMultiTex: Accepted and ignored.
- HWRawInput: This is a BlitzLLVM extension: the original has no such command.
- ImageBuffer: A frame number that does not exist stops the program with an error message.
- ImagesCollide: A frame number that does not exist stops the program with an error message.
- Include: The original opens a relative path from the folder the compiler runs in; BlitzLLVM starts at the file that includes it.
- Input: Without a graphics window the prompt is written to the console (standard output) and the line is read from the console (standard input).
-
Int: The originals read a text with
atoi, soInt("$FF")andInt("0x10")are 0 there. - JoyChanged: This is a BlitzLLVM extension: the original has no such command.
- JoyDeviceConnected: This is a BlitzLLVM extension: the original has no such command.
- JoyDeviceCount: This is a BlitzLLVM extension: the original has no such command.
- JoyDeviceName: This is a BlitzLLVM extension: the original has no such command.
- JoyHat: Without any joystick the original returns -1 as well, but this runtime returns 0, which looks like "up".
- JoyType: The original uses 1 for a digital and 2 for an analog joystick.
- JoyWait: If no joystick is connected the function returns 0 right away instead of waiting forever.
- KeyboardChanged: This is a BlitzLLVM extension: the original has no such command.
- KeyboardDeviceConnected: This is a BlitzLLVM extension: the original has no such command.
- KeyboardDeviceCount: This is a BlitzLLVM extension: the original has no such command.
- KeyboardDeviceName: This is a BlitzLLVM extension: the original has no such command.
- KeyDown: Keys that DirectInput has no code for, such as F16 to F24 and Help, are only reachable with VKeyDown.
- KeyHit: Keys that DirectInput has no code for, such as F16 to F24 and Help, are only reachable with VKeyHit.
- LastJoyDevice: This is a BlitzLLVM extension: the original has no such command.
- LastKeyboardDevice: This is a BlitzLLVM extension: the original has no such command.
- LastMouseDevice: This is a BlitzLLVM extension: the original has no such command.
- LeadingZeros 〔BlitzLLVM〕: Not in the originals.
- Load3DSound: See 3D Sound for what is simulated: volume falls off with the distance and the stereo position follows the angle to the listener, and the pitch is shifted when the sound or the listener moves (see CreateListener).
-
LoadAnimMesh: Models in
.b3d,.3dsand DirectX.xfiles can be loaded, see LoadMesh. - LoadAnimTexture: JPEG 2000 files do not load, and TIFF files with Deflate or JPEG compression do not, which the original read.
- LoadBSP: Lightmaps are used: a face that has one is drawn with it, and the other faces get the colors of their vertices.
- LoadBuffer: Formats other than BMP load as well, but not JPEG 2000 or TIFF with Deflate or JPEG compression, see Image formats.
-
LoaderMatrix: Only the matrix for
xis used. - LoadFont: Fonts are found in the font folders of the system by name, so a name such as "Arial" or "Courier New" needs that font installed, and common names fall back to a similar font (Helvetica to Arial, for one).
-
LoadImage: A glTF file (
.glbor.gltf) gives the pictures inside it:"model.glb"is the first and"model.glb#2"the third, see glTF models. -
LoadMesh: Models in
.b3d,.3dsand DirectX.xfiles (text, binary and compressed) can be loaded; the other file types of the original do not exist. - LoadSound: MIDI , module and Windows Media files are not supported.
- LoadTerrain: The official help says that the red channel is used.
- LoadTexture: Flag 2048 (sRGB conversion) and flag 4096 (render target) are new, see above.
- Locate: The position is limited to the window.
- LockBuffer: Up to 8 buffers can be locked at the same time.
- LockedFormat: Always 4, because every buffer here has four bytes for each pixel (blue first, then green, red and an unused byte).
-
LockedPitch: A buffer that Graphics3D made with the depth 64 has 8 bytes for each pixel, so a row takes
width * 8bytes. - LockedPixels: The bank is a copy of the pixels that is written back when the buffer is unlocked, it is not the memory of the graphics card.
- LockMouse: This is a BlitzLLVM extension: the original has no such command.
- LockTextArea: While a text area is locked it sends no events for the changes you make.
- Long 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
-
LoopMovie 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - LoopSound: There is no command to switch looping off again.
- MaximizeWindow: The operating system maximizes the window, also when it was made without flag 2 and so cannot be resized by the user; without a window manager nothing happens.
- MeshCullBox: The box only affects EntityInView.
-
Microseconds 〔BlitzLLVM〕: The value is a
UInt64, which no original command returns. - MinimizeWindow: The operating system minimizes the window and brings it back from its task bar; without a window manager nothing happens.
- ModifyTerrain: The realtime argument has no effect.
- MouseChanged: This is a BlitzLLVM extension: the original has no such command.
- MouseDeviceConnected: This is a BlitzLLVM extension: the original has no such command.
- MouseDeviceCount: This is a BlitzLLVM extension: the original has no such command.
- MouseDeviceName: This is a BlitzLLVM extension: the original has no such command.
- MouseDown: Buttons 4 and 5 (the back and forward buttons) are a BlitzLLVM extension.
- MouseHit: Buttons 4 and 5 (the back and forward buttons) are a BlitzLLVM extension.
- MouseX: The Device argument is a BlitzLLVM extension: the original has no such argument and only knows one mouse.
- MouseXSpeed: Putting the pointer somewhere with MoveMouse does not count as movement, the same as in the original.
- MouseY: The Device argument is a BlitzLLVM extension: the original has no such argument and only knows one mouse.
- MouseYSpeed: The Device argument is a BlitzLLVM extension: the original has no such argument and only knows one mouse.
- MouseZ: Fine scrolling wheels and touchpads that report fractions of a notch are rounded to whole steps.
- MouseZSpeed: The original only ever gives -1, 0 or 1.
- MoveMouse: The pointer is not warped on the desktop.
- MovieHeight: Nothing , the same as the original.
-
MovieLength 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - MoviePlaying: Nothing , the same as the original.
-
MoviePosition 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. -
MovieVolume 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - MovieWidth: Nothing , the same as the original.
- Notify: The box is a message box of the operating system in front of the program's active window, not part of it.
- OpenMovie: Movies are decoded by FFmpeg, whose shared libraries have to be next to the program: blitzcc copies them there when the program uses OpenMovie, and without them (or for a file that can't be played) the result is 0, which programs already have to handle.
- OpenTCPStream: IPv6 addresses and names that have them work.
-
PauseChannel: A debug build (
-d) stops the program when the channel was never given out. -
PauseMovie 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - PickedTime: The official help describes this as the time taken to calculate the pick.
- PlayCDTrack: Always returns 0 and plays nothing.
-
PlayMovie 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - PlayMusic: MIDI is not supported, and neither are the tracker formats (MOD, S3M, XM, IT) and WMA.
-
PlaySound: A debug build (
-d) stops the program when the sound is 0 (a sound that failed to load) or does not exist, other builds ignore the command, see Debug handle checks. - PopCount 〔BlitzLLVM〕: Not in the originals.
- Print: Without a graphics window the text goes to the console instead.
- Proceed: The box is a message box of the operating system in front of the program's active window.
- ProfileBegin: This is a BlitzLLVM extension: the original has no such command.
- ProfileEnable: This is a BlitzLLVM extension: the original has no such command.
- ProfileEnd: This is a BlitzLLVM extension: the original has no such command.
- ProfileFlipCount: This is a BlitzLLVM extension: the original has no such command.
- ProfileFPS: This is a BlitzLLVM extension: the original has no such command.
- ProfileItemCount: This is a BlitzLLVM extension: the original has no such command.
- ProfileItemName: This is a BlitzLLVM extension: the original has no such command.
- ProfileOutput: This is a BlitzLLVM extension: the original has no such command.
- ProfileSample: This is a BlitzLLVM extension: the original has no such command.
- ProfileSlow: This is a BlitzLLVM extension: the original has no such command.
- ProfileValue: This is a BlitzLLVM extension: the original has no such command.
- ProjectedX: The original returns 0 for X, Y and Z when the point is behind the camera or beyond the far plane.
- ProjectedZ: In the original this is the distance of the camera's near plane, a constant for every point; it is 0 when the point is not visible.
- QueryObject: Queries 1 and 2 give a number for the window of the operating system that the gadget is in: the same number for every gadget in a window, and it is the runtime's number for the window, not an HWND that the Windows API can use.
- RawInput: This is a BlitzLLVM extension: the original has no such command, and gets its mouse speed from DirectInput.
- RawInputEnabled: This is a BlitzLLVM extension: the original has no such command.
- ReadPixel: Without a lock the pixel has to be fetched from the graphics card, which makes this slow when it is used for many pixels.
- ReadPixel64 〔BlitzLLVM〕: The color is not turned into an integer: the channels are Float16, and the returned number is the memory of the pixel (8 bytes for the depth 64, the 4 bytes of the stored word for the others).
-
ReadPixelFast: A buffer that is not locked is ignored by a build without
-d(a read gives 0), and stops a debug build (-d) with an error message. -
ReadPixelFast64 〔BlitzLLVM〕: A buffer that is not locked is ignored by a build without
-d(a read gives 0), and stops a debug build (-d) with an error message. - RefreshRateAt 〔BlitzLLVM〕: A display number that does not exist gives 0 (an empty text for the name) instead of stopping the program, because a display can be unplugged while the program runs.
- RenderWorld: Entities that are made or hidden after CaptureWorld are drawn where they are, they do not fade in.
-
RequestColor: The picker is drawn by the runtime inside the program's active window (the window of
Graphicswhere there is none) and is simpler than the Windows color dialog: three sliders and a preview, no palette and no custom colors. - RequestDir: It is the folder dialog of the operating system, in front of the program's active window, which differs between Windows, macOS and Linux.
- RequestFile: It is the file dialog of the operating system, in front of the program's active window, so it looks different on each system.
- RequestFont: Only the size can be picked, from 8 to 32 points in a list, and the result is always the built-in font.
- ResizeImage: The picture is stretched with smooth filtering, where the original used simple pixel picking.
-
ResumeChannel: A debug build (
-d) stops the program when the channel was never given out. -
RotL 〔BlitzLLVM〕: Not in the originals, which have
Shl,ShrandSaronly. -
RotR 〔BlitzLLVM〕: Not in the originals, which have
Shl,ShrandSaronly. -
RuntimeError: The message is printed as
Runtime Error: ...on the standard error output, not shown in a dialog box. - SatByte 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SatInt 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SatLong 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SatShort 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SatUByte 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SatUInt 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SatULong 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SatUShort 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- SaveBuffer: The original only writes BMP files.
- SaveImage: The original only writes BMP files.
- ScaleImage: Scaling uses the same smooth filter as TFormImage, which TFormFilter can turn off.
- ScanLine: Always returns 0.
-
SeekMovie 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - SendUDPMsg: Only IPv4 addresses fit in a number, use SendUDPMsgTo for IPv6.
- SendUDPMsgTo: Not in the original.
-
SetBuffer: A debug build (
-d) stops with an error when the buffer is theTextureBufferof a texture that was not made with flag 4096 (render target), see CreateTexture. - SetCubeFace: The face numbers follow the cube map of Direct3D: 0 is -X, 1 is +Z, 2 is +X, 3 is -Z, 4 is +Y and 5 is -Y.
- SetCubeMode: The faces are copied into one sheet whenever a scene that uses the cube map is drawn, so the edges between faces can show a thin seam when the picture is magnified a lot.
- SetFont: A font that does not exist stops the program with an error message.
- SetGadgetFont: The gadget is drawn with the typeface of the font, and its text is measured in the widths of that font.
- SetGamma: The original changed the gamma of the whole display, and left it that way until the program was done.
- SetGfxDriver: Any number except 1 to CountGfxDrivers stops the program with an error message.
- SetMenuText: The text can be read back with MenuText here.
- SetMinWindowSize: The help lists height before width in its syntax line, the real order is width then height.
- SetSamplerAddressModeU 〔BlitzLLVM〕: The mode has to be 0 to 3, other values stop the program with an error.
- SetSamplerAddressModeV 〔BlitzLLVM〕: The mode has to be 0 to 3, other values stop the program with an error.
- SetSamplerAddressModeW 〔BlitzLLVM〕: The mode has to be 0 to 3, other values stop the program with an error.
- SetSamplerAnisotropy 〔BlitzLLVM〕: The graphics card has a limit and the value is lowered to it, and a card that can not do anisotropic filtering reads as if it was 1.
-
SetSamplerBorderColor 〔BlitzLLVM〕: Graphics cards without the
VK_EXT_custom_border_colorextension can only do transparent black, opaque black and opaque white, so any other color is read as the closest of the three. - SetSamplerFilterMag 〔BlitzLLVM〕: The mode has to be 0 or 1, other values stop the program with an error.
- SetSamplerFilterMin 〔BlitzLLVM〕: The mode has to be 0 or 1, other values stop the program with an error.
- SetSamplerFilterMip 〔BlitzLLVM〕: The mode has to be 0 or 1, other values stop the program with an error.
- SetSamplerLodBias 〔BlitzLLVM〕: The graphics card has a limit for the bias, and the value is kept inside of it.
- SetTextAreaFont: Only the size of the font is used, every font is drawn with the built-in typeface.
- SetToolBarTips: A hint shows below its button after the mouse rested on it for half a second, in a yellow box, and goes when the mouse moves to another button or is pressed.
- Short 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- ShowPointer: BlitzPlus lets the pointer be shown per canvas; here the canvas is accepted and ignored, as there is only one window pointer.
-
Single 〔BlitzLLVM〕: Not in the originals, which only have
Float. -
SoundPan: A debug build (
-d) stops the program when the sound is 0 (a sound that failed to load) or does not exist, other builds ignore the command, see Debug handle checks. -
SoundPitch: A debug build (
-d) stops the program when the sound is 0 (a sound that failed to load) or does not exist, other builds ignore the command, see Debug handle checks. -
SoundVolume: A debug build (
-d) stops the program when the sound is 0 (a sound that failed to load) or does not exist, other builds ignore the command, see Debug handle checks. - SpriteDepthFade 〔BlitzLLVM〕: The original has no such command.
- SpriteViewMode: The descriptions in the official help do not exactly match the engine.
- StartNetGame: The original showed a dialog box with the games found in the network.
- Stats3D: The original also reports the vertices and triangles of the terrains in indexes 1 and 2.
-
Step: The original only accepts a constant after
Stepand reports "Step value must be constant" otherwise. -
Stop: Only a build made with the debug option (
-d) stops: it is a breakpoint for a debugger, and ends the program with a signal when none is attached. -
StopChannel: A debug build (
-d) stops the program when the channel was never given out. -
StopMovie 〔BlitzLLVM〕: A debug build (
-d) stops the program when the movie does not exist, for example the 0 of a movie that failed to open, other builds ignore the command, see Debug handle checks. - StringHeight: Text has only one line, so this is always the height of one character.
- StringWidth: With the built-in bitmap font every character has the same width, so this is the number of characters times FontWidth.
-
SystemProperty: Off Windows
windowsdirandsystemdirare the folders where the system keeps its settings and its libraries, not the Windows folders. - TCPStreamIP: A peer that uses IPv6 has no address as a number, so this returns 0 for it; use GetTCPStreamAddress.
- TerrainDetail: The terrain has no level of detail here.
- TerrainShading: The terrain is always lit with normals that follow the height, whatever this is set to.
- Text: The built-in 8x8 pixel bitmap font is always used, scaled to the height of the current font.
- TextureBlend: Layers that have no texture or a blend of 0 are left out, and the layers after them move up, so the first of the others is blended with the surface like the original does.
-
TextureBuffer: SetBuffer on a texture buffer needs the texture to have flag 4096, which the original did not have; a debug build (
-d) stops with an error otherwise. - TextureCoords: Only these two sets exist, the call sets or clears the same switch as the flag 65536 of LoadTexture and CreateTexture.
-
TextureHeight: A debug build (
-d) stops the program when the texture does not exist, other builds give 0, see Debug handle checks. - TextureName: The original turns the path into lower case.
-
TextureWidth: A debug build (
-d) stops the program when the texture does not exist, other builds give 0, see Debug handle checks. -
TFormImage: A matrix that cannot be inverted (for example
a=0, b=0) stops the program with an error message. - TotalVidMem: The answer comes from the graphics card and is cut off at 2 GB because it has to fit into an integer.
- TrailingZeros 〔BlitzLLVM〕: Not in the originals.
- UByte 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- UDPMsgIP: A sender that uses IPv6 has no address as a number, so this returns 0 for it; use GetUDPMsgAddress.
- UDPStreamIP: Only IPv4, use GetUDPStreamAddress for IPv6 too.
- UInt 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- ULong 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
- UnlockMouse: This is a BlitzLLVM extension: the original has no such command.
- UpdateGamma: The original gave the tables to the display.
- UpdateWindowMenu: Menus here change the screen right away, so this command only asks for a redraw.
- UShort 〔BlitzLLVM〕: Not in the originals, which have no integers of other sizes.
-
VertexTexCoords:
wis ignored. - VertexW: The value is not stored: this always returns 1.
- VKeyDown: This is a BlitzLLVM extension: the original has no such command.
- VKeyHit: This is a BlitzLLVM extension: the original has no such command.
- VWait: There is no vertical blank to wait for, so VWait waits 16 milliseconds for each frame (60 frames per second).
- WaitJoy: If no joystick is connected the function returns 0 right away instead of waiting forever.
- WBuffer: Does nothing: the depth buffer is always the same reversed 32 bit float one (see Differences).
- WindowScale 〔BlitzLLVM〕: Not in the original, whose windows are scaled by Windows without the program knowing.
- WindowScaling 〔BlitzLLVM〕: Not in the original.
- WireFrame: On a graphics driver that can not draw lines instead of triangles the call is ignored and the world stays solid.
- Write: Without a graphics window the text goes to the console instead.
- WritePixel: A position outside of the buffer is ignored.
- WritePixel64 〔BlitzLLVM〕: A position outside of the buffer is ignored.
-
WritePixelFast: A buffer that is not locked is ignored by a build without
-d, and stops a debug build (-d) with an error message. -
WritePixelFast64 〔BlitzLLVM〕: A position outside of the buffer is ignored, and a buffer that is not locked is ignored by a build without
-dand stops a debug build (-d) with an error message.
Differences
- Overview
Features (41)
- 3D Studio models
- Asynchronous loading
- blitz-format
- Blitz-Tidy
- Color depth
- Colors
- Console window on Windows
- CPU features
- Culling
- Debug handle checks
- Depth buffer
- DirectX models
- Displays
- DPI scaling on Windows
- Fullscreen
- glTF models
- Image formats
- IPv6
- Language
- Large Meshes
- Lost graphics device
- Many lights
- Memory
- Mip maps
- Movie controls
- Multiplayer
- Number suffixes
- Numbers of other sizes
- Parameter modes (In, Out, InOut)
- Presentation sync
- Samplers
- Saving pictures
- Scan Codes
- Sound resampling
- Spherical fog
- Sprite depth fade (soft edges)
- Sprite shapes
- The windows of BlitzPlus
- Types everywhere
- Userlib declarations
- Warnings
Commands (333)
- ActivateWindow
- ActiveObjects
- ActiveWindow
- AddVertex
- AnimateMD2
- AntiAlias
- AppTitle
- AsyncLoading 〔BlitzLLVM〕
- AsyncSaving 〔BlitzLLVM〕
- AvailVidMem
- BackBuffer
- BrushTexture
- BSPAmbientLight
- BSPLighting
- BufferDirty
- Byte 〔BlitzLLVM〕
- ByteSwap 〔BlitzLLVM〕
- CameraFogMode
- CanvasBuffer
- ChannelPan
- ChannelPitch
- ChannelPlaying
- ChannelVolume
- ClientHeight
- ClientWidth
- CloseMovie
- Collisions
- CollisionTime
- Confirm
- CopyPixel
- CopyPixelFast
- CopyRect
- CountDisplayModes 〔BlitzLLVM〕
- CountDisplays 〔BlitzLLVM〕
- CountGfxDrivers
- CountGfxModes
- CountHostAddresses
- CountHostIPs
- CountRefreshRates 〔BlitzLLVM〕
- CreateButton
- CreateCanvas
- CreateComboBox
- CreateHtmlView 〔BlitzLLVM〕
- CreateImage
- CreateLabel
- CreateListBox
- CreateListener
- CreateMenu
- CreatePlane
- CreateTabber
- CreateTCPServer
- CreateTerrain
- CreateTextArea
- CreateTexture
- CreateToolBar
- CreateUDPStream
- CreateWindow
- DebugObjects
- Desktop
- DesktopBuffer
- DirectInputEnabled
- DisplayDepth 〔BlitzLLVM〕
- DisplayHeight 〔BlitzLLVM〕
- DisplayModeDepth 〔BlitzLLVM〕
- DisplayModeHeight 〔BlitzLLVM〕
- DisplayModeRefreshRate 〔BlitzLLVM〕
- DisplayModeWidth 〔BlitzLLVM〕
- DisplayName 〔BlitzLLVM〕
- DisplayRefreshRate 〔BlitzLLVM〕
- DisplayScale 〔BlitzLLVM〕
- DisplayWidth 〔BlitzLLVM〕
- DisplayX 〔BlitzLLVM〕
- DisplayY 〔BlitzLLVM〕
- Double 〔BlitzLLVM〕
- DrawBlockRect
- DrawImage
- DrawImageRect
- DrawMovie
- EmitSound
- EnableDirectInput
- EndGraphics
- EntityDepthFade 〔BlitzLLVM〕
- EntityLighting
- EntityStatic 〔BlitzLLVM〕
- EntityTexture
- Flip
- FlipCanvas
- FlushJoy
- FlushKeys
- FlushMouse
- FontHeight
- FontWidth
- FormatTextAreaText
- FreeFont
- FreeImage
- FreeSound
- FreeTexture
- FrontBuffer
- GammaBlue
- GammaGreen
- GammaRed
- GetBrushTexture
- GetHostAddress
- GetJoy
- GetKey
- GetMouse
- GetMovieTexture 〔BlitzLLVM〕
- GetSurfaceBrush
- GetTCPStreamAddress
- GetUDPMsgAddress
- GetUDPStreamAddress
- GfxDriver3D
- GfxDriverCaps3D
- GfxDriverName
- GfxModeDepth
- GfxModeExists
- GfxModeFormat
- GfxModeHeight
- GfxModeWidth
- GrabImage
- Graphics
- Graphics3D
- GraphicsDepth
- GraphicsFormat
- Half 〔BlitzLLVM〕
- HidePointer
- HostIP
- HtmlViewEventURL 〔BlitzLLVM〕
- HtmlViewRun 〔BlitzLLVM〕
- HtmlViewStatus 〔BlitzLLVM〕
- HWMultiTex
- HWRawInput
- ImageBuffer
- ImagesCollide
- Include
- Input
- Int
- JoyChanged
- JoyDeviceConnected
- JoyDeviceCount
- JoyDeviceName
- JoyHat
- JoyType
- JoyWait
- KeyboardChanged
- KeyboardDeviceConnected
- KeyboardDeviceCount
- KeyboardDeviceName
- KeyDown
- KeyHit
- LastJoyDevice
- LastKeyboardDevice
- LastMouseDevice
- LeadingZeros 〔BlitzLLVM〕
- Load3DSound
- LoadAnimMesh
- LoadAnimTexture
- LoadBSP
- LoadBuffer
- LoaderMatrix
- LoadFont
- LoadImage
- LoadMesh
- LoadSound
- LoadTerrain
- LoadTexture
- Locate
- LockBuffer
- LockedFormat
- LockedPitch
- LockedPixels
- LockMouse
- LockTextArea
- Long 〔BlitzLLVM〕
- LoopMovie 〔BlitzLLVM〕
- LoopSound
- MaximizeWindow
- MeshCullBox
- Microseconds 〔BlitzLLVM〕
- MinimizeWindow
- ModifyTerrain
- MouseChanged
- MouseDeviceConnected
- MouseDeviceCount
- MouseDeviceName
- MouseDown
- MouseHit
- MouseX
- MouseXSpeed
- MouseY
- MouseYSpeed
- MouseZ
- MouseZSpeed
- MoveMouse
- MovieHeight
- MovieLength 〔BlitzLLVM〕
- MoviePlaying
- MoviePosition 〔BlitzLLVM〕
- MovieVolume 〔BlitzLLVM〕
- MovieWidth
- Notify
- OpenMovie
- OpenTCPStream
- PauseChannel
- PauseMovie 〔BlitzLLVM〕
- PickedTime
- PlayCDTrack
- PlayMovie 〔BlitzLLVM〕
- PlayMusic
- PlaySound
- PopCount 〔BlitzLLVM〕
- Proceed
- ProfileBegin
- ProfileEnable
- ProfileEnd
- ProfileFlipCount
- ProfileFPS
- ProfileItemCount
- ProfileItemName
- ProfileOutput
- ProfileSample
- ProfileSlow
- ProfileValue
- ProjectedX
- ProjectedZ
- QueryObject
- RawInput
- RawInputEnabled
- ReadPixel
- ReadPixel64 〔BlitzLLVM〕
- ReadPixelFast
- ReadPixelFast64 〔BlitzLLVM〕
- RefreshRateAt 〔BlitzLLVM〕
- RenderWorld
- RequestColor
- RequestDir
- RequestFile
- RequestFont
- ResizeImage
- ResumeChannel
- RotL 〔BlitzLLVM〕
- RotR 〔BlitzLLVM〕
- RuntimeError
- SatByte 〔BlitzLLVM〕
- SatInt 〔BlitzLLVM〕
- SatLong 〔BlitzLLVM〕
- SatShort 〔BlitzLLVM〕
- SatUByte 〔BlitzLLVM〕
- SatUInt 〔BlitzLLVM〕
- SatULong 〔BlitzLLVM〕
- SatUShort 〔BlitzLLVM〕
- SaveBuffer
- SaveImage
- ScaleImage
- ScanLine
- SeekMovie 〔BlitzLLVM〕
- SendUDPMsg
- SendUDPMsgTo
- SetBuffer
- SetCubeFace
- SetCubeMode
- SetFont
- SetGadgetFont
- SetGamma
- SetGfxDriver
- SetMenuText
- SetMinWindowSize
- SetSamplerAddressModeU 〔BlitzLLVM〕
- SetSamplerAddressModeV 〔BlitzLLVM〕
- SetSamplerAddressModeW 〔BlitzLLVM〕
- SetSamplerAnisotropy 〔BlitzLLVM〕
- SetSamplerBorderColor 〔BlitzLLVM〕
- SetSamplerFilterMag 〔BlitzLLVM〕
- SetSamplerFilterMin 〔BlitzLLVM〕
- SetSamplerFilterMip 〔BlitzLLVM〕
- SetSamplerLodBias 〔BlitzLLVM〕
- SetTextAreaFont
- SetToolBarTips
- Short 〔BlitzLLVM〕
- ShowPointer
- Single 〔BlitzLLVM〕
- SoundPan
- SoundPitch
- SoundVolume
- SpriteDepthFade 〔BlitzLLVM〕
- SpriteViewMode
- StartNetGame
- Stats3D
- Step
- Stop
- StopChannel
- StopMovie 〔BlitzLLVM〕
- StringHeight
- StringWidth
- SystemProperty
- TCPStreamIP
- TerrainDetail
- TerrainShading
- Text
- TextureBlend
- TextureBuffer
- TextureCoords
- TextureHeight
- TextureName
- TextureWidth
- TFormImage
- TotalVidMem
- TrailingZeros 〔BlitzLLVM〕
- UByte 〔BlitzLLVM〕
- UDPMsgIP
- UDPStreamIP
- UInt 〔BlitzLLVM〕
- ULong 〔BlitzLLVM〕
- UnlockMouse
- UpdateGamma
- UpdateWindowMenu
- UShort 〔BlitzLLVM〕
- VertexTexCoords
- VertexW
- VKeyDown
- VKeyHit
- VWait
- WaitJoy
- WBuffer
- WindowScale 〔BlitzLLVM〕
- WindowScaling 〔BlitzLLVM〕
- WireFrame
- Write
- WritePixel
- WritePixel64 〔BlitzLLVM〕
- WritePixelFast
- WritePixelFast64 〔BlitzLLVM〕
Language Features
- Overview
Math (31)
- Overview
- Abs
- ACos
- ASin
- ATan
- ATan2
- ByteSwap 〔BlitzLLVM〕
- Ceil
- Cos
- Exp
- Floor
- LeadingZeros 〔BlitzLLVM〕
- Log
- Log10
- Mod
- Pi
- PopCount 〔BlitzLLVM〕
- RotL 〔BlitzLLVM〕
- RotR 〔BlitzLLVM〕
- SatByte 〔BlitzLLVM〕
- SatInt 〔BlitzLLVM〕
- SatLong 〔BlitzLLVM〕
- SatShort 〔BlitzLLVM〕
- SatUByte 〔BlitzLLVM〕
- SatUInt 〔BlitzLLVM〕
- SatULong 〔BlitzLLVM〕
- SatUShort 〔BlitzLLVM〕
- Sgn
- Sin
- Sqr
- Tan
- TrailingZeros 〔BlitzLLVM〕
Time & Date (8)
BlitzBasic
- Overview
Buffers and Pixels (20)
- Overview
- BackBuffer
- BufferDirty
- CopyPixel
- CopyPixelFast
- CopyRect
- FrontBuffer
- GraphicsBuffer
- LoadBuffer
- LockBuffer
- ReadPixel
- ReadPixel64 〔BlitzLLVM〕
- ReadPixelFast
- ReadPixelFast64 〔BlitzLLVM〕
- SaveBuffer
- SetBuffer
- UnlockBuffer
- WritePixel
- WritePixel64 〔BlitzLLVM〕
- WritePixelFast
- WritePixelFast64 〔BlitzLLVM〕
Display (46)
- Overview
- AvailVidMem
- CountDisplayModes 〔BlitzLLVM〕
- CountDisplays 〔BlitzLLVM〕
- CountGfxDrivers
- CountGfxModes
- CountRefreshRates 〔BlitzLLVM〕
- DisplayDepth 〔BlitzLLVM〕
- DisplayHeight 〔BlitzLLVM〕
- DisplayModeDepth 〔BlitzLLVM〕
- DisplayModeHeight 〔BlitzLLVM〕
- DisplayModeRefreshRate 〔BlitzLLVM〕
- DisplayModeWidth 〔BlitzLLVM〕
- DisplayName 〔BlitzLLVM〕
- DisplayRefreshRate 〔BlitzLLVM〕
- DisplayScale 〔BlitzLLVM〕
- DisplayWidth 〔BlitzLLVM〕
- DisplayX 〔BlitzLLVM〕
- DisplayY 〔BlitzLLVM〕
- EndGraphics
- Flip
- GammaBlue
- GammaGreen
- GammaRed
- GfxDriver 〔BlitzLLVM〕
- GfxDriverName
- GfxModeDepth
- GfxModeExists
- GfxModeFormat
- GfxModeHeight
- GfxModeWidth
- Graphics
- GraphicsDepth
- GraphicsFormat
- GraphicsHeight
- GraphicsLost
- GraphicsPalette
- GraphicsWidth
- HidePointer
- PrimaryDisplay 〔BlitzLLVM〕
- RefreshRateAt 〔BlitzLLVM〕
- SetGamma
- SetGfxDriver
- ShowPointer
- TotalVidMem
- UpdateGamma
- VWait
Fonts and Text (12)
Images (39)
- Overview
- AsyncLoading 〔BlitzLLVM〕
- AsyncSaving 〔BlitzLLVM〕
- AutoMidHandle
- CopyImage
- CreateImage
- DrawBlock
- DrawBlockRect
- DrawImage
- DrawImageRect
- FreeImage
- GrabImage
- HandleImage
- ImageBuffer
- ImageFrameDelay
- ImageFrames
- ImageHeight
- ImageReady 〔BlitzLLVM〕
- ImageRectCollide
- ImageRectOverlap
- ImagesCollide
- ImagesOverlap
- ImageWidth
- ImageXHandle
- ImageYHandle
- LoadAnimImage
- LoadImage
- MaskImage
- MidHandle
- RectsOverlap
- ResizeImage
- RotateImage
- SaveImage
- SavesFailed 〔BlitzLLVM〕
- SavesPending 〔BlitzLLVM〕
- ScaleImage
- TFormFilter
- TFormImage
- TileBlock
- TileImage
Mouse (25)
- Overview
- DirectInputEnabled
- EnableDirectInput
- FlushMouse
- GetMouse
- HWRawInput
- LastMouseDevice
- LockMouse
- MouseChanged
- MouseDeviceConnected
- MouseDeviceCount
- MouseDeviceName
- MouseDown
- MouseHit
- MouseWait
- MouseX
- MouseXSpeed
- MouseY
- MouseYSpeed
- MouseZ
- MouseZSpeed
- MoveMouse
- RawInput
- RawInputEnabled
- UnlockMouse
- WaitMouse
Movies (15)
- Overview
- CloseMovie
- DrawMovie
- GetMovieTexture 〔BlitzLLVM〕
- LoopMovie 〔BlitzLLVM〕
- MovieHeight
- MovieLength 〔BlitzLLVM〕
- MoviePlaying
- MoviePosition 〔BlitzLLVM〕
- MovieVolume 〔BlitzLLVM〕
- MovieWidth
- OpenMovie
- PauseMovie 〔BlitzLLVM〕
- PlayMovie 〔BlitzLLVM〕
- SeekMovie 〔BlitzLLVM〕
- StopMovie 〔BlitzLLVM〕
Network (26)
- Overview
- AcceptTCPStream
- CloseTCPServer
- CloseTCPStream
- CloseUDPStream
- CountHostAddresses
- CountHostIPs
- CreateTCPServer
- CreateUDPStream
- DottedIP
- GetHostAddress
- GetTCPStreamAddress
- GetUDPMsgAddress
- GetUDPStreamAddress
- HostIP
- OpenTCPStream
- RecvUDPMsg
- SendUDPMsg
- SendUDPMsgTo
- TCPStreamIP
- TCPStreamPort
- TCPTimeouts
- UDPMsgIP
- UDPMsgPort
- UDPStreamIP
- UDPStreamPort
- UDPTimeouts
Blitz3D
- Overview
3D Sound (2)
Animation (16)
BSP (4)
- Overview
- BSPAmbientLight
- BSPLighting
- BSPLightmapColor 〔BlitzLLVM〕
- LoadBSP
Display (9)
- Overview
- CountGfxModes3D
- GfxDriver3D
- GfxDriverCaps3D
- GfxMode3D
- GfxMode3DExists
- GfxMode3DHeight 〔BlitzLLVM〕
- GfxMode3DWidth 〔BlitzLLVM〕
- Graphics3D
- Windowed3D
Entities (44)
- Overview
- AlignToVector
- CopyEntity
- CountChildren
- CreatePivot
- EntityAlpha
- EntityAutoFade
- EntityBlend
- EntityClass
- EntityColor
- EntityDepthFade 〔BlitzLLVM〕
- EntityDistance
- EntityFX
- EntityInView
- EntityLightChannel 〔BlitzLLVM〕
- EntityLighting
- EntityName
- EntityOrder
- EntityParent
- EntityPitch
- EntityReady 〔BlitzLLVM〕
- EntityRoll
- EntityShininess
- EntityStatic 〔BlitzLLVM〕
- EntityTexture
- EntityX
- EntityY
- EntityYaw
- EntityZ
- FindChild
- FreeEntity
- GetChild
- GetMatElement
- GetParent
- HideEntity
- MoveEntity
- NameEntity
- PaintEntity
- PointEntity
- PositionEntity
- RotateEntity
- ScaleEntity
- ShowEntity
- TranslateEntity
- TurnEntity
Lights (5)
Sprites (7)
Surfaces (29)
- Overview
- AddTriangle
- AddVertex
- ClearSurface
- CountSurfaces
- CountTriangles
- CountVertices
- CreateSurface
- FindSurface
- GetSurface
- PaintSurface
- TriangleVertex
- UpdateNormals
- VertexAlpha
- VertexBlue
- VertexColor
- VertexCoords
- VertexGreen
- VertexNormal
- VertexNX
- VertexNY
- VertexNZ
- VertexRed
- VertexTexCoords
- VertexU
- VertexV
- VertexW
- VertexX
- VertexY
- VertexZ
Textures (51)
- Overview
- AtlasTexture
- ClearTextureFilters
- CreateSampler 〔BlitzLLVM〕
- CreateTexture
- FreeSampler 〔BlitzLLVM〕
- FreeTexture
- GetSamplerAddressModeU 〔BlitzLLVM〕
- GetSamplerAddressModeV 〔BlitzLLVM〕
- GetSamplerAddressModeW 〔BlitzLLVM〕
- GetSamplerAnisotropy 〔BlitzLLVM〕
- GetSamplerBorderColorA 〔BlitzLLVM〕
- GetSamplerBorderColorB 〔BlitzLLVM〕
- GetSamplerBorderColorG 〔BlitzLLVM〕
- GetSamplerBorderColorR 〔BlitzLLVM〕
- GetSamplerFilterMag 〔BlitzLLVM〕
- GetSamplerFilterMin 〔BlitzLLVM〕
- GetSamplerFilterMip 〔BlitzLLVM〕
- GetSamplerLodBias 〔BlitzLLVM〕
- GetSamplerLodMax 〔BlitzLLVM〕
- GetSamplerLodMin 〔BlitzLLVM〕
- LoadAnimTexture
- LoadAtlas
- LoadTexture
- PositionTexture
- RotateTexture
- SaveTexture 〔BlitzLLVM〕
- ScaleTexture
- SetCubeFace
- SetCubeMode
- SetSamplerAddressModeU 〔BlitzLLVM〕
- SetSamplerAddressModeV 〔BlitzLLVM〕
- SetSamplerAddressModeW 〔BlitzLLVM〕
- SetSamplerAnisotropy 〔BlitzLLVM〕
- SetSamplerBorderColor 〔BlitzLLVM〕
- SetSamplerFilterMag 〔BlitzLLVM〕
- SetSamplerFilterMin 〔BlitzLLVM〕
- SetSamplerFilterMip 〔BlitzLLVM〕
- SetSamplerLodBias 〔BlitzLLVM〕
- SetSamplerLodMax 〔BlitzLLVM〕
- SetSamplerLodMin 〔BlitzLLVM〕
- SetTextureSampler 〔BlitzLLVM〕
- TextureBlend
- TextureBuffer
- TextureCoords
- TextureFilter
- TextureFrameDelay
- TextureFrames
- TextureHeight
- TextureName
- TextureReady 〔BlitzLLVM〕
- TextureWidth
World (20)
BlitzPlus
- Overview
Gadgets (50)
- Overview
- ActivateGadget
- AddGadgetItem
- ButtonState
- ClearGadgetItems
- CountGadgetItems
- CreateButton
- CreateComboBox
- CreateHtmlView 〔BlitzLLVM〕
- CreateLabel
- CreateListBox
- CreatePanel
- CreateProgBar
- CreateSlider
- CreateTabber
- DisableGadget
- EnableGadget
- FreeGadget
- GadgetFont
- GadgetGroup
- GadgetHeight
- GadgetItemText
- GadgetText
- GadgetWidth
- GadgetX
- GadgetY
- HideGadget
- HtmlViewBack 〔BlitzLLVM〕
- HtmlViewCurrentURL 〔BlitzLLVM〕
- HtmlViewEventURL 〔BlitzLLVM〕
- HtmlViewForward 〔BlitzLLVM〕
- HtmlViewGo 〔BlitzLLVM〕
- HtmlViewRun 〔BlitzLLVM〕
- HtmlViewStatus 〔BlitzLLVM〕
- InsertGadgetItem
- ModifyGadgetItem
- RemoveGadgetItem
- SelectedGadgetItem
- SelectGadgetItem
- SetButtonState
- SetGadgetFont
- SetGadgetLayout
- SetGadgetShape
- SetGadgetText
- SetPanelColor
- SetPanelImage
- SetSliderRange
- SetSliderValue
- ShowGadget
- SliderValue
- UpdateProgBar