To begin, we got two links for BitBucket, a file-sharing program with an online server. In conjunction with TortoiseHG, we used the two links provided in the tutorial to clone repositories onto our local machine. There were two main files: The dependencies and the engine itself. The dependencies are all the files which the engine requires to run, while the engine executes the programs itself. After a lengthy process (everyone was cloning at the same time), we now had a client-side version of the engine and dependencies.
The next step was to install the PATH directories for the dependencies. We opened up a .bat file which performed this task. To make sure everything worked properly, we installed the Rapid Environment Editor, a program to easily manage file paths. The key is to ensure the environment path matches your local files. Everything is going well so far, but it soon went downhill.
The paths look good! |
With that done, a new build of the dependency solution proved more successful. The rest is simply repeating the process for the TwoLocEngine. After clicking the install.bat file, the path setup only took 2 seconds which seemed suspicious. Upon trying to build the engine, there were missing file and linker errors all over the place. Checking back to the REE, I found the path did not get set up properly for the engine. Fixing that, I tried again and got a corrupt library error. At this point I asked Saad for help and we fixed it, but the error was reoccurring.
Getting very frustrated, I deleted everything to do with TwoLoc and started from scratch. A couple blue screens and a Windows Recovery later, I re-cloned the repositories and rebuilt all the solutions. This time I checked every path before-hand, ensuring nothing went wrong along the way. Sure enough the 2nd attempt was much smoother and I could actually try out some of the engine samples.
Once in the engine, you must first select a project and set it as the Startup Project. This means it will open all pertinent files for only that project when you try to debug. One final step is to copy the linker directories into the debug working directory. This makes sure all the files end up in the proper location once you run the project.
Yay! The projects ran and I played around with the samples. Unfortunately the physics cannon was broken, and Saad walked us through using the call stack and break points to debug the issue. The culprit was an overflowed buffer, and a quick increase in buffer size was sufficient to fix the error. It was a rocky start, but I can finally get to blowing things up with a physics cannon.