How I stumbled upon Blitz3D
Growing up, one of my favorite coding languages and platforms was Blitz3D.Blitz3D is part of the Blitz language family which was used in the Amiga platform. Open-sourcing of the latter, enabled grassroots efforts to emerge, and from this wave, a New Zealand company called Blitz Research Ltd, launched Blitz3D.
During that time I was exhausting VisualBasic and getting bored of reverse engineering videos games on the Dreamcast/Playstation/PSP.
When I started getting into game development, Blitz3D presented a platform and a rich bustling community that allowed me to learn quickly while exchanging expertise and ideas.
I met many mentors and friends that I still keep in touch with today!
So I was plenty surprised when Blitz3D went open source a few months back!
[toc]
Building Blitz3D
I chose the latest and greatest in the Windows ecosystem resulting in using Windows 10 and Visual Studio 2015 Community Edition.- 1. Opening the Project
- Visual Studio will begin the auto-migration process…
- Thankfully it is quasi perfect!
-
Error Fixing
- Now onto actually building the project follow the steps in README.
- We’re sitting on 221 errors/327 warnings (more appear as I fix this first wave)
- Errors are all accross the board
- Float type
- Template code fixing
- Casting issues

- Now onto actually building the project follow the steps in README.
-
DirectX7 and Windows10
- Error “cannot open file ‘dmusici.h’/’dplay.h’ (DirectX SDK)
- Fix: https://www.microsoft.com/en-
us/download/details.aspx?id= 13287 - dxsdk_aug2007.exe

- Ask for .Net Framework 3.5
- Takes a long time
- Install kicks off
- Success.
- Force restarting directX installer in order to progress
- Fix: https://www.microsoft.com/en-
- Error “cannot open file ‘dmusici.h’/’dplay.h’ (DirectX SDK)
-
Path Environments Through Scripting
-
New Bugs and Errors
- Now onto fixing build breaks, updating definitions, protecting macros and fixing coding related to upgraded C/C++ standards
no suitable conversion function from "std::_Vector_iterator<std::_Vector_val<std::_Simple_types>> to "char *" exists bbruntime blitz3d\bbruntime\bbsockets.cpp 105 -fix: in_buf.begin() to in_buf[0] n=::recvfrom( sock,&in_buf[0],sz,0,(sockaddr*)&in_addr,&len ); -Other: bbsockets.cpp 119Fixing "INFINITY" definition #ifndef INFINITY const float INFINITY=10000000.0f; //big value #endif
Error (active) identifier "__RPC__inout_xcount" is undefined bblaunch c:\Program Files (x86)\Windows Kits\8.1\Include\um\OAIdl.h 5331
- Now onto fixing build breaks, updating definitions, protecting macros and fixing coding related to upgraded C/C++ standards
- A few hundred bugs and compile errors later we have an error-free build!
- Config project doesn’t output lib file due to lacking a .cpp. (create and include headers)
Successful Build











