Overview
Game Title: PhotoGenesis
Genre(s): Educational, Simulator, Single player
Platform(s): PC
Game Engine: Unreal Engine 4
Target Audience: Novice to Intermediate Photographers
Current PhotoGenesis aim
The aim of PhotoGenesis is to create an educational simulator to help others to understand photography. In my game the user will need to take photos and they will be given points based on the settings used and how close they are to the perfect exposure, they will be tested on what they have learnt.
The first part of the document is an overview describing how the camera settings in my game currently work.
The camera lens attached is ~21mm lens (90 FOV) and all the photos are taken with it. The settings of aperture were copied from my 35mm 1.8 lens and add the f stop of 1 as you can really see it in this game engine. The Shutterspeed were also taken from this lens but I removed a few to make the Shutterspeed array smaller for gameplay purposes which currently has 52 array values. ISO has the values from 100 to 51,200.
It is hard to match the exact sensor capabilities to a sensor currently available in the real world.
Aperture
The aperture setting is nearly complete but needs some work, currently the way this setting works is that from where the is it finds the front vector (the way the player is looking) then it fires a linecast and when it collides with object with collision it saves the distance between the where the linecast started to where the collision hit and stopped the linecast. Using this data, I use a post processing setting to set the aperture the user has picked from that location creating depth of field. The Aperture currently are saved into a predefined array (as shown below), this is also the same for ISO and Shutterspeed. The way I need to improve this is to have the correct brightness values on each f-stop.
Shutterspeed
The Shutterspeed currently is how fast the image is captured; from when the button is pressed to when the shutter closes to take the photo. So, for 1/4000 is how it remains open for the time given. Whereas 1.3s the shutter is open for of 1.3 second from when the button was pressed to take the photo. This setting also currently affects brightness depending on how the shutter is opened it adds a greater amount of brightness to the photo, this setting is currently a hacky-version and needs to be redone with the correct brightness values.
Furthermore, the way Shutterspeed is set up, any value below 1/200 gradually adds more and more motion blur; 1/200 has motion blur effect of 25%, 1/160 has 50%, 1/125 has 75% and any lower than that, it has full motion blur affect. The way this post processing calculates motion is, within the last two frames it calculates the velocity of the object then but this is where this setting doesn’t not meet its real-life counterpart, the motion blur isn’t 100% accurate and only works if the Shutterspeed setting is one of the values listed above. What would be ideal is if I able to capture multiple photos during the time frame provided and then merge them together to create a motion blur effect. This is currently a major issue as currently have no idea how I am able to do this within the game engine and if it is even possible to do so.
ISO and Focus points
The ISO currently calculates the brightness level and as you increase the ISO it increases brightness as well as grain/noise in the photo. This setting on the camera is currently one of the most complete. However, what needs to be looked at are the values of how much grain/noise and how steadily the brightness increases on each ISO level.
The focus points setting currently just moves the linecast depending on where the user wants it to go, this feature doesn’t need to be altered in anyway apart from if you need to add more focus points on the camera. It has 15 focus points currently.
Other Changes
The other changes needed is optimisations for my game, currently only high-end pc are able to run my game smoothly.
New features
I will also have 3 different difficulty settings; Novice, Intermediate and Professional. The range of values in shutter speeds, apertures and focus points available will be determined on what difficulty is chosen. Novice will have 25% of full range, Intermediate 50% and Professional will have all the current ones.
Aside from the manual mode which is the current mode which is available in my game, I want to add Shutterspeed and Aperture Priority modes. These modes are semi-automatic modes which means the user will only need to worry about one of the settings and the other one will adjust automatically.
I also want to add a score system; this system works is that it will judge how close the settings are to the perfect settings and then times by the time taken.
Future features
Further down the line I want to add more lens, such as a telephoto 70-200mm f/2.8, a wide-angle 10-24mm f/3.5-4.5G, a portrait 50mm f/1.8, 85mm f/1.8 and 135mm 1.8.
Room design
Control Hub: Just like the what I have currently created in the tutorial room, I will first teach how to use the controls for Shutterspeed, ISO, Aperture and Focus Points.
Goals: Meet the requirements of each setting, i.e. Move Focus point left, ISO = 4000, Aperture of f/11 etc.
Lesson Learnt: How to change each setting.
Room Design: ALREADY MADE
Room 1: Capturing an object in fairly dark room.
Goal: The user will only be able to change the ISO setting in order to see what it does. (ISO ONLY) The user will then need to write what ISO does.
Lesson Learnt: Here the user will learn how drastically ISO can affect the brightness and also that grain increases as ISO increases.
Room Design: WILL CREATE WHEN WORKING ON LEVEL
Room 2: Focusing on Person and blurring out background (Portrait Photography)
Goal: To capture two different photos of a person with two different apertures. (Aperture Priority Mode)
Lesson Learnt: Here the user will learn how aperture and focus point work together to affects the final image.
Room Design: WILL CREATE WHEN WORKING ON LEVEL
Room 3: Mid-air water droplet
Goal: The goal of the room is to capture a water droplet with the correct settings where the user captures the water droplet frozen in mid-air. (Shutter Priority Mode)
Lesson Learnt: Here the user will learn how to capture still images of fast moving objects.
Room Design: WILL CREATE WHEN WORKING ON LEVEL
Room 4: A water stream (Landscape Photography) (I will need to rework Shutterspeed as described above for this to work)
Goal: Capture the water flowing creating a “string like effect” on the moving water. (Shutter Priority Mode?)
Lesson Learnt: The user will learn what low Shutterspeed does to motion.
Room Design: WILL CREATE WHEN WORKING ON LEVEL
Room 5: Randomised level capturing a photo of an object in a low light situation. (Product Photography)
Goal: The user will need to take a photo of an object using either Shutter or Aperture Priority Mode, depending of the object is moving or not.
Lesson learnt: The user will be able to distinguish what mode can be used depending on the setting. Having to choose between Shutterspeed and Aperture the user will learn how both of these settings can be used to get the best photo without the need to increase ISO drastically.
Room Design: WILL CREATE WHEN WORKING ON LEVEL
Room 6: Real Life type scenario of taking photos of various objects in different lighting conditions. (Mixed)
Goal: The person will have to use all they have learnt and take various photos within a big room, this is a collection of the last 5 room in one but with a time frame. The time will be decided after testing the level.
Lesson Learnt: This is the final room; the user will be under stress as this will be the first time they will be timed. This room is to test the user to be fast and effective in taking photos.
Room Design: WILL CREATE WHEN WORKING ON LEVEL
Schedule order
This is a plan and order of how my game is going to be completed. I have used the time lengths as shown below due to the fact I will need to find a job and also maintain my position in the company while I work on this project. I have given plenty of time for myself to complete these due to the fact I don’t want to rush this however, the time to complete may decrease/increase.
What needs to be done, Estimated time to complete.
Refine Shutterspeed Two weeks
Refine Aperture Two weeks
Add Aperture Priority mode Two weeks
Add Shutterspeed Priority mode Two weeks
Add Difficulty modes Two weeks
Create Room 1 Assets Three weeks
Create Room 1 Three weeks
Add score system Two weeks
Create Room 2 Assets Three weeks
Create Room 2 Three weeks
Create Room 3 Assets Three weeks
Create Room 3 Three weeks
Create Room 4 Assets Three weeks
Create Room 4 Three weeks
Create Room 5 Assets Three weeks
Create Room 5 Three weeks
Create Room 6 Assets Three weeks
Create Room 6 Three weeks
Bug test, Two weeks
Total Estimated Time: 50 Weeks