Explore an area of game AI in greater depth by designing and implementing your own AI tech demo system in Unity and C#. This should consist of a Unity scene which demonstrates the use of one or more game AI techniques relevant to agent movement and behaviour or content generation. You need to provide written and video documentation of your demo (see submission details). Importantly: • Your scene needs to demonstrate your work when you press play. It should contain content which utilises the underlying techniques, i.e. agents that take actions, or display generated content. • Your implementation should not be too speciﬁc to this scene, so that one could reuse your code in a similar but distinct context, i.e. to control a similar agent or generate similar content. • Technique(s) can be taken from the game AI literature (see sources below) and do not have to be novel. • The implementation should be your own. Declare any third party code/libraries you used in source code comments AND your written submission. Scope It is important that you scope your submission appropriately. You should implement at least one game AI technique that is distinct from those covered in the labs. To gain a pass, this could be a simple demo of a single technique. An excellent demo will fulﬁl at least one of the following criteria: combine two techniques, implement reﬁnements beyond the basic technique, demonstrate a technique exceptionally well. However, you are only expected to demonstrate one or two techniques, and you should not attempt to developing a complete game or an AI code library. Some example topics are listed below. To ensure an appropriate scope, you should discuss your plans for your submission with the module leader in the lab sessions BEFORE the end of autumn term. Submission Please submit via [login to view URL] a text ﬁle containing a URL for a online git repository, e.g. hosted on the department gitlab. This can be the same repository you submitted for coursework 1. The repository should contain: • The source code for your tech demo. • A [login to view URL] ﬁle providing documentation for the demo, comprising: - Written documentation (approx. 1000 words), giving speciﬁc details of the techniques used, what the demo does, and how to use it. - Video documentation, in the form of a link to an online video (at least 1 minute) that demonstrates the demo’s typical range of behaviour. The video should be posted in a private webspace (e.g. Dropbox).
Implement any 2 of these from below:
• Generation of a waypoint network from a scene. • Pathﬁnding with predeﬁned navmeshes (not Unity’s built in system) • Grid-based pathﬁnding using jump-point search. • Pathﬁnding with a known variation on A*. • Steering behaviours. • Other reactive movement techniques, e.g. velocity obstacles, context behaviours. • Simple behaviour trees. • Simple hierarchical FSMs (advanced). • A 2D dungeon generator, using tiles or partitioning. • A cellular automata based level generator. • A landscape generator, using a Perlin-noise heightmap with some simple terrain types/features. • A evolutionary PCG system (advanced). Reusing AI systems built-in to Unity or from the Unity asset store is acceptable, providing the focus of your demo is another distinct AI technique.
Technical implementation (30%). The use of appropriate programming techniques to realise your AI tech demo. The submitted Unity project should run. Source code should be appropriately structured and commented. Understanding of game AI (40%). The implemented techniques should be non-trivial and demonstrate some understanding of concepts/theory relevant to game AI. Marks will be gained for technical complexity of the AI, generality of the implemented techniques, and appropriateness for use in game development. Behaviour & performance (20%). The actual behaviour demonstrated by your submission (either agent behaviour or content) will be assessed in terms of efﬁciency, complexity, diversity, and potential interest to players or designers. Presentation (10%). The standard of presentation of your work, in the written and video documentation. An excellent demo will fulﬁl at least one of the following criteria: combine two approaches, implement reﬁnements beyond the basic technique, demonstrate a technique exceptionally well.
I need it completed by 19th Decemeber Thursday night latest.