Author: ryanjames
-

Unity Sonar Pipeline with Inbound (JNLP) Jenkins Agents
Getting this working was a journey of trial and error — I must have broken it a hundred different ways before landing on a solution that finally stuck. The goal sounded simple enough: run SonarQube analysis against my Unity project inside a Jenkins pipeline.
-

Setting up Jenkins on a Hatless Fedora Server
Installing jenkins on a headless fedora server and settings up HTTPS and A records
-

Running Unity Tests with Jenkins
Using Jenkins for the unity project is a great option to automate builds, run tests, gather reports and in my case I also use SonarQube to analyse my static code. I set jenkins up to do this previously, and then forgot how to do it so this article will hopefully benefit my future self when…
-

Unity with Android Activity Callbacks
I am still learning android development, still wrapping my head around the basic concepts, so trying to get unity and android working together has had its challenges. One such challenge is triggering android activities from unity then getting some result back. An Activity is a core building block of Android apps, representing a single screen…
-

Android Google Drive API OAuth with .NET
As part of a larger virtual reality project I need to use the Google Drive API as a source that users can use to download files (readonly). I have implemented this in unity and the user is able to launch the browser, authenticate with OAuth and download files to the application. This is all done…
-

Validating Custom Logging in Unity
Unity has a few builtin methods to validate assertions in the UnityEngine.TestTools namespace, you can validate the message as well as the log level. Here are a couple of examples One gotcha I have found with these is that if the test completes before the log is triggered, unity log assertions will not wait implicitly…
-

Unity with Native Android Calls
As I work on a toy project in unity I have came across the challenge of integrating it with android. My project is targetting android, however it doesn’t really need to use any android features so my goal was to bypass JNI and go straight to the native system as much as possible. My inital…
-

Learning Haskell Day 2
On day 1 of learning Haskell and going through advent of code, we used foldl to move up and down floors to see what floor we ended up on. Day 2 is trickier as we need to do the same, but stop when we reach floor -1 for the first time. The result is how…
-

Learning Haskell Day 1
I have been wanting to learn some functional programming and what better language to start with the original, at least I think it is the original. It is a pure functional language so I guess will force me to think differently than what I’m used to. I am using the first AdventOfCode to learn it,…
-

Debugging Unity Native Plugins
When developing some native plugins to use in my unity project I frequently run into generic errors coming from the dll that I am not experienced in debugging. I have one such an example and wanted to record it for my future self if I run into these kind of issues again. Background I haven’t…