Adding Seq logging to unity

Seq is my logging server of choice, so as there were no existing integration with Seq, I wanted to see how far I could take an implementation. As unity doesn’t have nuget support, I wanted an implementation that tied into unity’s logging commands rather than something like serilog. The lack of unity support also limits the JSON serialization. The serializer included with unity is unable to serialize dictionaries or anonymous types, so can’t have dynamic log properties.

Read More

Automated certificate handling in Azure DevOps

While Azure services have quite good support for certificate handling these days, on premises deployments using Azure Devops dont provide much in the way of certificate handling. To work around this, I’ve scripted up a solution that retrives a certicate, installs it on the host and then puts the certificate thumbprint into a variable for use later in the build or release pipeline.

Read More

Unit testing around HttpContext

While testing around web frameworks has greatly improved in recent years, but when there is a need to work with older frameworks like WebForms, the story isn’t quite as friendly. As webforms was not designed with testability or dependency injection in mind, it has a number of components that are statically accessed and can’t be overriden for testing. A central one of these is the HttpContext, which holds the current user identity and session information

Read More

Unity Game Dev Project Post 1

This is part 1 of a gamedev project and tutorial. As I continue to implement features in the game, I will document them with detailing the steps I’ve gone throw to get the mechanic working in the game.

Read More

Geolocated AR in Unity ARFoundation

ARFoundation is an experimental package from unity that provides a common layer on top of Apple ARCore and Apple ARKit https://docs.unity3d.com/Packages/com.unity.xr.arfoundation@1.0/manual/index.html

Read More

Creating dynamically coloured models in Unity using Blender

Colour can be used in games to convey useful contextual information about objects in the world. For example, if you have storage tanks that can each be used to store one of a variety of different resources, colour can be used to provide a clear visual indication of which resource each tank contains. This post will cover creating a simple model to use as the tank, importing it to unity, then adding configuration to the object to allow the runtime colour to be changed.

Read More

Converting the dotnet console to support double buffering

Dot net console apps are useful for rapidly creating and testing concepts, and it is even possible to fairly rapidly produce a tetris clone or text based RPG with a rudimentary UI. However the console has flickering issues when you try redrawing sections of the screen too frequently, due to content being drawn straight to the screen. This is a known problem with 2D/3D applications, and is solved through a technique called double buffering, where the image is drawn to a second buffer, then the display is then swapped to displaying this second buffer. My investigation here is to find a robust and easy to use way to provide this kind of buffering to the dot net console.

Read More

Setting up Power BI On-premises Report Server

Power BI is a cloud hosted reporting and business analytics platform created by Microsoft to allow users to easily manipulate and report on data from a large range of supported sources. While it does provide an interface to retrieve data from on premises database installation, not all companies are comfortable using cloud based systems as part of their day to day business. Microsoft now provide an on premises version of the Power BI report server for companies to host internally as a bridging solution that allows customers to develop reporting that is cloud compatible, without having to commit to a full migration immediately.

Read More

Update on AR-Kit

Now that AR-Kit and iOS are out of Beta, Apple have unveiled some additional new features exclusive to the new iPhone X, as well as guidelines on creating VR Experiences.

Read More

Website Status Checker for Integration Tests

During some recent client work I faced some issues after a deployment verifying that all the Http/Https bindings and url redirects were working as expected. As these were not part of any regular testing plan, I couldn’t provide the level of assurance I’d have liked that they had worked before. This combined with previous trouble tracking expiry of client SSL certificates prompted me to think that it would be useful to be able to include these tasks in integration tests.

Read More

Upgrading Umbraco from v4 to v7

Recently for work I’ve had the opportunity to upgrade a website from using version 4 of Umbraco to version 7. Due to the significant investment already made in the website, the upgrade needed to be able to reuse as much of the existing customisations and templates as possible. Fortunately version 7 still supports the older template format that used ASP.net master pages.

Read More

Intro to Apple AR-Kit

Special thanks to Tod for chasing an iPhone 6 for me, and apologies to him for telling him I needed an iPhone 6 when I needed a 6S.

Read More

Useful Practices

Tools

OneNote

Allows saving notes and sharing them between different platforms. It has mobile, windows and web apps and is accessible through onedrive. It also supports drawing on mobile devices, tables and touch screens.

Read More