Skip to content

Instantly share code, notes, and snippets.

@RBrNx
Last active April 8, 2019 08:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save RBrNx/4f7c2f886a4241cfd04b6e7e40daaddf to your computer and use it in GitHub Desktop.
Save RBrNx/4f7c2f886a4241cfd04b6e7e40daaddf to your computer and use it in GitHub Desktop.
{
"repositories": [
{
"show": true,
"imageMain": "/project-images/fireworks.png",
"imageDrop": "/project-images/fireworks_2.png",
"title": "Particle System with Multiple Lights",
"description": "A 3D Environment showcasing particle Fireworks, and multiple lights.",
"carouselImages": [ "fireworks.png", "fireworks_2.png" ],
"aboutProject": "<p>This <strong>Particle System and Multiple Lights</strong> demonstration was created during my 3rd year of University, with the help of my fellow student <span class='fancyLink'><a href='http://nightshiftgames.co.uk/'>Mark Smellie</a></span>. We were tasked with creating three advanced graphics techniques which could be showcased in one application.</p><p>I chose to implement a <strong>Particle System</strong> which would simulate fireworks, each of which had a randomised colour, location and length of time until explosion. Mark chose to implement a scene which would feature multiple lights, each with their own colour and luminosity.</p><p>Finally our two projects were merged and each firework was given its own light source and the particles would match the colour of the light. Between us we also implemented <strong>Bump Mapping</strong> into the scene, to give the environment some realistic detail.</p>",
"techSheet": [ "C++", "OpenGL", "Lighting Shaders", "Particle Shaders", "Bump Mapping", "SDL2" ],
"links": [ { "linkText": "Particle System Repository", "link": "https://github.com/RBrNx/AGP-Fireworks-Multiple-Lights", "linkType": "github" },
{ "linkText": "Particle System Showcase", "link": "https://www.youtube.com/watch?v=1L254BKJxJ8", "linkType": "youtube" }
]
},
{
"show": true,
"imageMain": "/project-images/AdventofCode.png",
"imageDrop": "/project-images/AdventofCode_2.png",
"title": "Advent Of Code Challenges",
"description": "Complete answers for all the Advent of Code challenges.",
"carouselImages": [ "AdventofCode.png", "AdventofCode_2.png" ],
"aboutProject": "<p>Advent of Code is a series of small programming puzzles for a variety of skill levels. They are self-contained and are just as appropriate for a beginner who is just learning to code, as they are for an expert who wants to stay sharp.</p><p>Each day throughout December a new puzzle is released, each one with two parts to solve and two gold stars to collect. Every year there is a different story that explains why you need to collect these gold stars, usually it's to help Santa!</p><p>I have individual Github repositories containing my answers for each year that Advent of Code has been running.</p>",
"techSheet": [ "C# .NET", "C++", "LINQ", "Problem Solving", "Optimizing Code", "Pathfinding Algorithms" ],
"links": [ { "linkText": "Advent of Code", "link": "https://adventofcode.com/" },
{ "linkText": "Advent of Code 2015", "link": "https://github.com/RBrNx/AdventOfCode2015", "linkType": "github" },
{ "linkText": "Advent of Code 2016", "link": "https://github.com/RBrNx/AdventOfCode2016", "linkType": "github" },
{ "linkText": "Advent of Code 2017", "link": "https://github.com/RBrNx/AdventOfCode2017", "linkType": "github" }
]
},
{
"show": true,
"imageMain": "/project-images/sokogenerator.png",
"imageDrop": "/project-images/sokogenerator_2.png",
"title": "SokoGenerator",
"description": "SokoGenerator is a free, open source level generator for the game 'Sokoban'.",
"carouselImages": [ "sokogenerator.png", "sokogenerator_2.png" ],
"aboutProject": "<p>SokoGenerator is a free, Open-Source level generator for the game <strong>Sokoban</strong> which was developed as part of my <strong>Honours Project</strong> that involved research into how to algorithmically class the difficulty of a Sokoban level.</p><p>The program will generate a number of levels based upon a set of variables that can be chosen by the user, and also contains a Sokoban Solver so that each level is guaranteed to be solvable.</p><p>The level generating and solving algorithms are written in <strong>C++</strong>, with the <strong>Qt framework</strong> providing the UI, and is compatable with Windows 7/8/10. Any generated levels can be saved to a <strong>.sok</strong> file which can be read by most Sokoban applications.",
"techSheet": [ "C++", "Qt Framework", "Procedural Level Generation", "Solving Algorithms" ],
"links": [ { "linkText": "SokoGenerator", "link": "https://github.com/RBrNx/SokoGenerator", "linkType": "github" },
{ "linkText": "Play Sokoban", "link": "https://sourceforge.net/projects/jsokoapplet/" }
]
},
{
"show": true,
"imageMain": "/project-images/puttered.png",
"imageDrop": "/project-images/puttered_2.png",
"title": "Puttered!",
"description": "A 2D Golf Game written in Javascript.",
"carouselImages": [ "puttered.png", "puttered_2.png", "puttered_3.png" ],
"aboutProject": "<p>Puttered is a 2D golf game that was created by my friend and I as a requirement for the Mobile Game Development module of our University Course. It is based on the popular mobile game <strong>Super Stickman Golf</strong> and contains two courses, each with 9 holes to play.</p><p>The game was built for mobiles but is also playable in a desktop browser. It was written in Javascript and HTML5, using the <strong>Phaser.js</strong> framework for all the loading, rendering and general gameplay, along with <strong>Box2D</strong> as the physics engine. Each course has its own online leaderboard with playres scores stored in a MYSQL Database, which the game communicates with using a PHP layer and some AJAX requests.</p>",
"techSheet": [ "UI/UX Design", "UI/UX Animations", "HTML5 - Canvas, Audio", "Javascript", "Phaser.js", "Box2D Physics", "PHP", "AJAX Requests" ],
"links": [
{ "linkText": "Puttered", "link": "https://github.com/RBrNx/Puttered-", "linkType": "github" },
{ "linkText": "Play Puttered", "link": "http://www.redbarongames.co.uk/Puttered/index.html" },
{ "linkText": "Phaser.js", "link": "https://phaser.io/" }
]
},
{
"show": true,
"imageMain": "/project-images/mathmathrev.png",
"imageDrop": "/project-images/mathmathrev_2.png",
"title": "Math Math Revolution",
"description": "A Dance Dance Revolution inspired learning game for the Kinect",
"carouselImages": [ "mathmathrev.png", "mathmathrev_2.png" ],
"aboutProject": "<p><strong>Math Math Revolution</strong> is an educational game developed by myself and some other students in a group project during my 3rd year at University. The game makes use of the <strong>Microsoft Kinect</strong> to allow fun gameplay elements that will enable players to learn a subject without getting bored.</p><p>The game was inspired by <strong>Dance Dance Revolution</strong>, however instead of following dance moves the player must answer a series of questions with each arrow on the dance mat corresponding to an answer. The subject that the game helps to teach is National 4 Mathematics, specifically the subtopics of <strong>Algebra</strong>, <strong>Trigonometry</strong> and <strong>Geometry</strong>.</p>",
"techSheet": [ "UI/UX Design", "Unity 5", "C#", "Microsoft Kinect" ],
"links": [
{ "linkText": "Math Math Revolution", "link": "https://github.com/RBrNx/MathMathRevolution", "linkType": "github" }
]
},
{
"show": true,
"imageMain": "/project-images/AppleIdentifier.png",
"imageDrop": "/project-images/AppleIdentifier_2.png",
"title": "Image Processing on PS3",
"description": "Project that focused on performing Image Processing using the Cell Broadband Processor in the PS3.",
"carouselImages": [ "AppleIdentifier.png", "AppleIdentifier_2.png" ],
"aboutProject": "<p>This project focused on producing an application which could 'identify' an apple based on size, shape and colour similarities with other apples. This application was then modified to run in parallel on the <strong>Playstation 3's Cell Broadband Processor</strong>.</p><p>Identification is performed by taking an input image, converting it to greyscale, passing it through a <strong>Gaussian filter</strong>, before finally passing it through a <strong>Sobel filter</strong> to perform the edge detection. A number of algorithms are then used to clean up any anomalies in this filtered image.</p><p>Using the edge detection as a mask, a colour histogram is created from only the pixels inside the mask. This histogram is then normalised and compared to histograms for a control group of apples, with any similarities being output by the application.</p>",
"techSheet": [ "Parallel computing", "C++", "lodePNG", "Gaussian Filter", "Sobel Filter", "Non-Maximum Suppression", "Double Thresholding", "Hysteresis Tracking" ],
"links": [
{ "linkText": "Apple Identifier - Cell BE", "link": "https://github.com/RBrNx/CGD-Cell-BE-Apple-Identifier", "linkType": "github" },
{ "linkText": "Apple Identifier - x86", "link": "https://github.com/RBrNx/GCD-Serial-Apple-Identifier", "linkType": "github" }
]
},
{
"show": true,
"imageMain": "/project-images/PortfolioWebsite_2.png",
"imageDrop": "/project-images/PortfolioWebsite_2.png",
"title": "Portfolio Website",
"description": "Website for showcasing my Portfolio pieces.",
"carouselImages": [ "PortfolioWebsite_2.png", "PortfolioWebsite_2.png" ],
"aboutProject": "<p>The aim of this project was to create a showcase of everything that I have worked on in recent times. I wanted to create a website that simple to navigate, yet beautiful and engaging, using all my experience and knowledge of web technologies that I have amassed over the past few years.</p><p>The website is made up of a basic HTML template, with <strong>jQuery</strong> doing some of the heavy lifting and some magical <strong>CSS</strong> sprinkled throughout. All of my projects that appear on this website are dynamically loaded using my <strong>Github Profile</strong>, and a JSON file that is stored within each of my repositories, allowing for future projects to be added effortlessly.</p>",
"techSheet": [ "UI/UX Design", "UI/UX Animations", "Responsive Web Design", "HTML5", "CSS3 - Preprocessed with LESS", "jQuery", "Github API" ],
"links": [
{ "linkText": "Portfolio Website", "link": "https://github.com/RBrNx/PortfolioWebsite", "linkType": "github" }
]
},
{
"show": true,
"imageMain": "/project-images/PortfolioWebsite_2.png",
"imageDrop": "/project-images/PortfolioWebsite_2.png",
"title": "Github Search Application",
"description": "Search Application based on a technical test.",
"carouselImages": [ "PortfolioWebsite_2.png", "PortfolioWebsite_2.png" ],
"aboutProject": "<p>The aim of this project was to create a showcase of everything that I have worked on in recent times. I wanted to create a website that simple to navigate, yet beautiful and engaging, using all my experience and knowledge of web technologies that I have amassed over the past few years.</p><p>The website is made up of a basic HTML template, with <strong>jQuery</strong> doing some of the heavy lifting and some magical <strong>CSS</strong> sprinkled throughout. All of my projects that appear on this website are dynamically loaded using my <strong>Github Profile</strong>, and a JSON file that is stored within each of my repositories, allowing for future projects to be added effortlessly.</p>",
"techSheet": [ "UI/UX Design", "UI/UX Animations", "Responsive Web Design", "HTML5", "CSS3 - Preprocessed with LESS", "jQuery", "Github API" ],
"links": [
{ "linkText": "Portfolio Website", "link": "https://github.com/RBrNx/PortfolioWebsite", "linkType": "github" }
]
}
]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment