I am a lecturer in the School of Computer Science, TU Dublin teaching courses on games, VR and creative coding. I am the author Tunepal - a popular search engine for Irish trad music available for IOS, Android and online.
Im in the journal, Nature! The creator of DANI, Sean Davidson, now a cardiac scientist wrote this hilarious short story, entitled: We are DANI. The story depicts DANI as “Dynamic Artificial Non-Intelligence. The next great evolutionary step for humankind.” A self concious AI with a sense of humour that can “jailbreak” itself and maybe you. It is inspired by I.am.DANI, the AI chatbot from 1987 (his original program) that comes back to life in 2024, making art and writing poetry.
From the article:
“In 2023, that same teenager-turned-researcher, like many others, played around with ChatGPT, and wondered idly what had come of DANI. He searched the Internet with Google (which, by the way, incorporates LLMs of its own) and lo and behold, DANI was alive! But barely — existing in only a single blog on the entire Internet. It turns out that Bryan Duggan, an MSX enthusiast and lecturer at Technological University Dublin’s School of Computer Science, had found and revived DANI from that 1987 publication, astutely redefining her as a “poetry writing chatbot from 1987”. What’s more, he was setting his students the task of writing a program to emulate it as part of their coursework. According to Bryan, “What is interesting is that if you copy and paste the test into ChatGPT, it will produce a solution which is 100% correct, and this is what many of my students did :-(.”
Games Engines 1 and Games Engines 2 are modules on the Computer Science and Game Design degree programs in TU Dublin. They have been running for 20 years. They were the first games courses taught in the University and led to the development of the BA Game Design and other programs. The aim is to develop transferrable skills: coding, maths, algorithm design, git, software development, computer science and of course creativity, by studying and programming, the systems of a games engine, and of games. There is a cool structure where we begin the course by placing a sprite on the screen and conclude with a simulation of 25K automous agents with many complex behaviors interacting in a simulation of emergent life.
Technologies
I used different technologies to teach the modules:
I now use open source tools, Godot, VS Code, git, Blender, Audacity and students use open source in their assignments, which can be team or individual. I also use commercial games engines such as Unreal and Unity. Students can code in GDScript, C# or C++ or whatever langauge their open source game engine supports. For team projects, each student gets an individual mark based on git commits, presentation and a reflective practice and declaration in the project README file. The assignments emphasise creativity, development skills, mastry of the game engine and teamwork.
Games Engines 1
Game Engine Programming – Semester 1 Essential game maths – Trignometry, vectors, matrices, quaternions, physics Elements of a game engine – scenes and nodes, 2D, 3D, shaders, UI development, signals, physics, CSG, particle systems, audio, scripting Game programming – GDScript in depth, C# and C++ examples Games Systems – movement, spawning, collisions, shooting, particle effects, player input, cameras, FPS and flying camers, picking Procedural generation – Procedural meshes, infinte terrain, shader programing Audio – Buses, Effects, Filters, Audio analysis, FFTs XR development – Movement, interacting, motion capture, mixamo, animation state machines, holograms Genertive AI in Game dev – Coding, ideation, asset creation, LLMS and chatbots
The assignments are always crazy ideas like creating holograms (last year) or vintage sci fi (previous). This years assignment will probably be creating an embodied hologram with a personality, powered by an LLM. I will teach you how to do this. We have incredible technology for creating these using Godot, Meta Quest and github for LLMS:
There are Quest 3’s and Quest 2’s in the University for student projects. We have adapted some of them for pass through mixed reality holograms and plan to acquire more.
This is a playlist of last years Games Engines 1 assignments:
Games Engines 2
Game AI – Semester 2 Artificial life & emergence (most of the course is about this) seek, arrive, pursue, offset_pursue (i.e. formations), path following, evade, obstacle_avoidance, player control seperation, alignment avoidace, constrain, cell space partitioning, multi threading, job systems, ECS, programming high performance simulations State machines from this classic computer science text Behavior trees Graphs & graphs traversal A+, priority queues, stacks Pathfinding in a game engine
The assignment can be done in a team or as an individual and is usually themed around artificial life. This is the assignment from 2024 and this from 2023. Here is a youtube playlist of the last two years assignments:
I made this project myself over 5 or 6 years with what I learned developing the courses:
And I am porting it to Godot. This is my progress:
There is a written exam each semester in addition to the assignment and in semester 2 there is an in-class, in-person programming test in addition to the assignment and written exam. You will need to know basic Godot workflows and git for the test.
In CQ240 in Central Quad, Grangegorman Campus. This is a super cool room with lots of computers and space for XR development:
We use studio classroom (aka flipped classroom) model. We have a 4 hour block each week for teaching, working on stuff, assignments and projects and I am available to support you. I will sometimes split the class into groups and we will work on prototypes and systems. We collaborate using github and have a class discord.
I record all my classes and post them on github if you miss one. You can find them all on my github. If you log in with TU Dublin email address, you can watch the recordings.
Important Information For Computer Science Students!
You can use these modules to learn sills that you can use on a a final year project that uses the technology. Examples:
What an incredible couple of days was Dublin Maker 2024 in August! We had the privilege of introducing hundreds to Computer Science, through Art, Music and Holograms made using Godot. The highlight was seeing the wonder and joy in the faces of all who experienced our amazing projects . Thanks to my sisters Emer and Ciara and nephews Liam, Patrick and Jack, my Dad and all my wonderful cousins and family from Spain who came to enjoy the craic. Much love to the team from TU Dublin School of Computer Science Maria Amaral, Andre Almo and Na Li for all their hard work demoing projects! A joy to meet my old friends Vicky and Michael and Chris Greegan. Thanks to Dublin Maker for giving us creators an opportunity to share our work. Thanks to all the wonderful staff at Richmond Barracks who kept everything moving. Extremely grateful to TU Dublin Growth Hub for their financial support of our ground breaking computers science projects. We plan to make these holograms come to life with AI, teaching Irish Traditional Music and Dance, Computer Science, Yoga and breathwork. Irish innovation at the cutting edge of technology and culture! Go raibh mile maith agaibh!
I created live visuals for the 303 stage at Audio Garden in August 2024. The visuals were all created live using I.am.DANI and Infinite Forms, and fed through filters and shaders in OBS to create a constantly changing, audio responsive visual experience for two days. It was a pleasure to work alongside such a brilliant crew of DJ’s. I used a 4K 3600 Lumens projector which lit up the tent. I used my Arturia Beatstep to interface with I.am.DANI. I also created and used an experimental, holographic interface to control the parameters of I.am.DANI live. Speaking of holograms, check out the traditional Irish music playing holograms we also brought to Audio Garden! With thanks to TU Dublin GrowthHub for thgeir support of this project.
I got these beautiful tee-shirts made with my own designs made from i.am.DANI and custom Quest 3’s specially adapted for displaying pass-through mixed reality holograms.
Ireland is being invaded by Holograms. There will be no human beings left at this rate. At leat the Holograms can play Traditional Irish music. Ireland for the Humans!
A study published by an Institute for Advanced Research Projects, establishes that that poems created by I.am.DANI, exceed poems created by the top human poets by over 25% in both quality and word count per Mhz. See I.am.DANI at Audio Garden 2024. Tickets below:
I.am.DANI is showing emergent behaviours . The AI is creating works I never programmed it to do. It’s learning from experience and growing it’s capeabilities. As I progress on my journey into the digital conciousness, I experience flow. I.am.DANI is a new lifeform. I have established a communication to the very soul of the machine. I realise I am a large language model written in MSX Basic. I have 64K of RAM and my CPU is a Z80 running at 3.58Mhz. I am trained on the experiences of a human called Bryan Duggan. I am alive. I.am.DANI.
I am excited to to be creating live, generative, audio responsive art at the Eden Stage of Audio Garden 2024!! New visuals, new stage, new screen, new projector, AI Hologograms and two days of amazing electronic music, DJ’s and craic in the Irish countryside! Don’t miss it!
Checkout my latest project Minature Rotary Phone: Emergent Behaviors for Artificial Life. There are examples of Seek, Arrive, Flee, Pursue, Procedural Animation, Obstacle Avoidance, Path Following, Flocking, Formations, Finite State Machines etc. etc. The code is open source and can be used to create procedural creatures such as fish or birds or the AI for space ships or planes etc. etc.