Portfolio of Thomas Linstead

SWC Designs is a website exhibiting the work of Thomas Linstead (Degree of Masters of Computing with First Class Honours in Computer Graphics)

Transphere - The Physics-based Puzzle Game

Available now to download for phones and tablets on iOS, Android & Amazon devices!

You control a sphere which can switch between different materials to solve puzzles to complete various stages. Try to collect all the stars to unlock new levels and content. Build & share your own levels with the community. Download, play and rate other people's creations from all around the world!

Available to download on Phones and Tablets!

By Thomas Linstead.

Programming Languages: C#, Unity2017-06-17

Cosmicraft - The Spaceship Building Game

As seen at the Norwich Gaming Festival 2016

Craft your very own spaceship from an array of connectable parts. Create any design from your imagination and then fly your ship through space in intense combat battles. Pilot your ship with acrobatic manoeuvres and shoot down the opposition with a variety of weaponry.

Sign up for a Cosmicraft account to access many of the games features. An account will enable you to play online with other players and to upload and share your ship designs to the online database.

(Note: This game is still in the Alpha phase of development, therefore gameplay and features could potentially change)

Salesforce Development

Employement as a Salesforce Developer at Epos Now

I am currently employed at Epos Now based in Norwich. EPOS Now is the leader in cloud-based point of sale systems with over 10,000 hospitality and retail businesses relying upon us, and were ranked by the Sunday Times as the 13th fastest-growing tech business in the UK. My role is part of the Internal Team managing the Salesforce CRM system and developing new features on the platform.

While working at Epos Now for the past year I have developed many new features and some useful applications.

Additional Tabs - Show all system tabs including hidden and previously inaccessible tabs.
As a Salesforce Adminstrator you will find your organisation can quickly run out of usable Object Tabs. This app provides a way to view all hidden objects including ones which do not have a tab. This frees up tabs from the small overall limit by allowing less import objects to be accessed via this page instead.

Google Calendar Sync - Integration with Google Calendar to automatically add Salesforce Events to the users Google Calendar.
Keeping up to date with Events with multiple calendars can be tricky. This app syncs your Salesforce Events to the corresponding persons Google Calendar. Setup by connecting your organisations Google Admin account OAuth details and once complete any new inserted or updated events will automatically show on the calendar corresponding with the users email address.

Custom Buttons - Show page buttons visually in easy tabular sections on pages for quick access additionally working with the Salesforce1 Mobile app. Much better than the standard grey buttons.

I also have undertaken many Trailhead Modules to familiarise myself with newer aspects of the Salesforce CRM platform. All development work ad-hears to the Lighting Design System and strict standards. All work shown here is just a small portion of the development I have achieved while working at Epos Now.

Haptic Interactive Molecular Docking Software

Masters Dissertation Project. Grade: 77.95% (FIRST CLASS)

My Masters year project was to develop a piece of software as part of a team to simulate molecular docking of molecules. Molecular Docking involves positioning at least two molecules together to form a suitable best 'fit' complex. The software created allowed for the ability to load data files from the Protein Data Bank and see a visual representation of the molecules. These molecules can be moved and collide with other, together with interaction with a haptic feedback device. Realistic approximates of the force acting between the molecules are also calculated and force feedback provided to the user. The project involved C# development for the main application using OpenTK for OpenGL functionality and custom molecular DLL libraries.

Mech Duel AR Card Game

Computer Games Laboratory Module. Grade: 87.20% (FIRST CLASS)

Mech Duel is an augmented-reality (AR) card game created as a project for the Computer Games Lab module. It utilises custom designed playing cards which can be placed under a webcam to detect the markers printed upon the cards. This is handled by the incorporation of the ARToolKit library (available here). Once detected the card is either activated or a 3D model of the Mech is rendered above the card, facing the opposing Mech. These are fully animated utlising many custom recorded motion captured movements allowing the Mech's to attack and move. The game also features the option to use anaglyph 3D gameplay and is touchscreen compatible, to create an immersive experience. Additionally the game can be played between two human players, or against an AI opponent. The objective is to strengthen your Mech in order to defeat your opponent’s Mech through use of attacks and playing upgrade cards in turn-based gameplay.

2D CAD: Architecture

The aim of this project was to create a bespoke piece of software for 2D computer aided design (CAD) specifically for architectural drawing. The objective was to produce a system that is extensible and well-designed which meets the client’s needs.
A software product was produced as part of a team consisting of three individuals utilising agile development methods. The software was produced to meet the requirements of a client, extensively tested to ensure these requirements were met and documented thoroughly.

Global Illumination: Can it be Achieved in Real-Time? Research Paper

Research Methods Module. Grade: 75.00% (FIRST CLASS)

Conducted research and wrote a paper looking into the the field of Global Illumination. This report describes the different methods and techniques of implementing global illumination. The techniques such as rasterisation, ray tracing,
path tracing and radiosity are compared and the real-time possibilities explored.

Real-Time Ray Tracing Project

3rd year dissertation project on the topic of Ray Tracing. An alternative computer rendering technique for producing high quality computer images. By simulating the physics of light this technique produces a 3D environment exhibiting refractions and reflections. I have worked on producing a real-time interactive application through utilising the power of graphics hardware with OpenCL.

3D Forklift Simulator

Advanced Graphics Module. Grade: 79.70% (FIRST CLASS)

The aim of this concept was to design and implement an environment with a fork lift truck that can be operated by the user. The controls needed to be simple and easy to use and the driver must operate the truck so that it can pick up boxes and place them on a stack. If a box is not placed correctly on the stack it should fall off. The simulator required several viewpoints including behind the vehicle, in the drivers position and a top down view. These have been implemented as well as a fully rotatable camera and infinitely random generated boxes that can all interact with each other.

WikiEnc Encyclopaedia Website

Software Engineering II Module. Grade: 78.35% (FIRST CLASS)

This project was to create a new web-application called WikiEnc, consisting of a website containing user-contributed encyclopaedia articles. The system allows users to view articles, which can be added to their basket and downloaded as an E-book. Each article contains a discussion section, where users can discuss the content of the article in question. Users are also able to rate articles, as well as rate the users who have contributed to it. Each article has a history section showing the changes which have been made to it. Users have a profile and are able to view a newsfeed of their favourite articles.

The system was developed as part of a team utilising software engineering methodologies and practices. We implemented the WikiEnc system according to the given specification and system requirements. We implemented the system using the Model-View-Controller architecture to separate the different areas of the system. JSP’s were used to create the view aspect of the system; servlets were used as controllers and did not output any html content. Entity beans together with ORM (Object Relational Mapping) were used to represent the data used in the model. Design patterns were used to solve problems that are commonly encountered in software development and to make the system more extensible and maintainable.

3D Car Simulator

Graphics II Module. Grade: 75.50% (FIRST CLASS)

The aim of this project was to create a 3D world and implement a concept for simulating driving around in a car. The project implements a infinite perlin generated world with collisions, basic physics and multiple views. Created from bottom up with only C++ and OpenGL.

The Hunt - The Search for Gold (Minecraft Mod)

Minecraft Map and Bukkit Java Plugin - Survival PvP

==========================
Overview: THE HUNT
==========================
The Hunt is a survival games style gamemode with the aim to collect gold nuggets and gold ingots from chests around the map and by killing fellow players. The winner is the first person to craft a gold block and place it at the top of the pyramid in the middle of the map. The map is made up of four regions: Fire, Water, Desert and Forest with the pyramid in the center. (Each region contains the same amount of gold)

Headmasters Study Holiday Cottage Website

Website Development for Client: The Headmasters Study Holiday Cottage

Developed a website for advertising and managing booking for a local holiday cottage in Southwold. Developed from scratch using HTML and CSS elements, together with additional PHP to create a custom calendar booking system. It is specifically designed to showcase pictures of the cottage and to easily view available bookings. However the owner has since sold the cottage and the website no longer needed. (Do not try to book this cottage as it is no longer available.)

Sigma Racing Top Down 2D Game

Graphics I Module. Grade: 81.63% (FIRST CLASS)

The aim of this assignment was to design and implement an interactive 2D game involving the user character racing around a track. A racing genre game was developed with many race tracks and other AI racing cars. The final racing game called Sigma Racing implements these features as well as novel features such as random track generation and a number of racing game modes.

Anglia Design LLP Website

Website Development for Client: Anglia Design LLP

Worked alongside the employees of Anglia Design LLP to produce a professional website for the company. Developed from scratch using Flash and HTML elements, together with additional Javascript to showcase the companies work. It is specifically designed to be viewed on both windows and apple devices.

Portal 2 Custom Cooperative Map

T.O.M - Testing Operative Module

I created my own level for the game 'Portal 2', called T.O.M - Testing Operative Module (Pun on my name). This was created using the Hammer World Editor tool. The level is designed to be an old testing module back from the early days of Aperature Science. A tough and challenging testing environment for training new science operatives. The level contains several test areas utilising many of the various puzzle mechanics. To play the game download the file below and place it into the "C:\Program Files (x86)\Steam\SteamApps\common\Portal 2\portal2\maps" folder. Start up Portal 2 in a coop game with a friend and type "changelevel mp_coop_T_O_M" into the console.

Quadapong Flash Game

Simple and fun adaptation of the classic pong game made in Adobe Flash. Try to get as many points as you can before losing all 3 lives. You lose a life if the ball goes off of the screen. Keep the ball
on the screen using the four paddles, intuitively controlled by the mouse. Also try the Multiplayer mode to test your skills against a friend.