class: center, middle # Creación de Videojuegos ### Review ---
--- class: center, middle # Pathfinding --- # Question
Find a path from Graz to Munich using Breadth-First Search -- Find a path from Graz to Munich using Depth-First Search, when the neighbors are ordered *alphabetically*. --- # Question
Find a path from Graz to Munich using Greedy Search with the following heuristic values: Bregenz: 101, Bruck: 203, Eisenstadt: 400, Graz: 301, Klagenfurt: 202, Lienz: 201, Linz: 200, Salzburg: 100, Vienna: 300 Find a path from Graz to Munich using A*. --- class: center, middle # Movement --- # Question What is a NavMesh? --- class: center, middle # AI Behavior --- # Question What is a decision tree? --- # Question What is a behavior tree? --- # Question Design a decision tree for a soccer forward (delantero). -- Design a behavior tree for a soccer forward (delantero). --- # Question Imagine a game where you and an opponent alternate with choosing bits for a binary number, until the number has 3 digits. If the resulting number is prime, you get points equal to its value, otherwise you lose points equal to its value. Draw the game tree for this game. What is your best first move? Example: You pick 0, your opponent picks 1, then you pick 1. The number is 011 in binary, or 3 in decimal, so you get 3 points. --- class: center, middle # Procedural Content Generation --- # Question Why would we want to generate content with code? -- Name 5 things we can generate procedurally. --- # Question Say you want to create a game where you explore an abandoned mine. How could you automatically generate such a mine? --- # Question What are L-Systems? -- What are they most commonly used for, and why? --- class: center, middle # Physics Simulation --- # Question Say you have an object with 100kg, and apply a force of 10N to it. What acceleration will the object experience? -- If we apply this force for 5 seconds, how fast will the object be moving afterwards? -- If the object starts at the origin (0,0,0), we apply the force for 5 seconds, where will the object be located after a total of 10 seconds? (Assume the physics simulation runs once per second) --- # Question The coulomb model of friction states that the friction force is $$ F_f \le \mu \cdot F_n $$ Explain the terms in this equation. -- Name a scenario in which the friction force can be less than the right hand side of the equation. --- # Question What is drag? -- How does drag differ from dry friction? --- class: center, middle # Collision Detection --- # Question When is the dot product of two vectors greater than, less than, and equal to zero, (given their relative directions)? --- # Question Say we have 3 spheres, S1, S2, and S3, each with radius 3. S1 is located at (0,0,0), S2 is located at (0,-4,3), and S3 is located at (3,0,4). Which of these sphere intersect, if any? --- # Question Let there be a sphere S1 at (8,4,2) with radius 5, and another sphere S2 with radius 1 at (0,0,0). S2 then starts moving in x-direction with 1m/s. At what time do the two spheres collide? -- Hint: You can take the position of S2 as (t,0,0), and find the (smaller) value for t for which the two spheres collide. --- # Question Given a ray R starting at (1,0,0), in direction (1,0,0), where is the projection of the center of the sphere S1, which is located at (8,3,4), on that ray? -- Assume the sphere has radius 4. Does the ray intersect the sphere? -- Assume the sphere has radius 6. Does the ray intersect the sphere? --- # Question Given a plane going through the point (2,0,1) with normal (0,-0.71,-0.71), for each of these three points determine if it lies in front, behind or on the plane. P1 = (2,2,2) P2 = (0,0,0) P3 = (3,3,-2) --- # Question Given a plane going through the point (1,2,3) with normal (0.71,0,-0.71), determine where a ray starting at (0,0,3) in direction (1,0,0) intersects that plane. Recall: $$ t = \frac{(\vec{p} - \vec{o}) \cdot \vec{n}}{\vec{d} \cdot \vec{n}} $$ --- # Question What is the separating planes theorem? --- # Question Given the axis aligned bounding boxes (AABBs) of two objects, what can you say about the collision between the two objects if: - The AABBs collide? - The AABBs don't collide? --- # Question What is Lockstep networking? What are its main limitations? --- # Question How does client-side prediction work? Why is it used? --- # Question Describe lag-reduction in client-server games. What are its advantages and drawbacks? --- # Question How can you detect cheating in games? --- class: center, middle # Player Analytics --- # Question Name 3 things you can do to keep players engaged longer with your game. --- # Question From the data you collected about your players, most of them play the game during their lunch break, from noon to 2pm. How could you use this information?