#like not only did i learn the entire 3D modelling -> texturing -> game implementation pipeline
Explore tagged Tumblr posts
Text
yknow what i think i give myself a lot more grief than is actually warranted, i got a hell of a lot done over the past 4 years :0
#i think i tend to focus on all the ways i've failed (networking and socializing x_x) rather than everything i've accomplished#like not only did i learn the entire 3D modelling -> texturing -> game implementation pipeline#but i also used charcoal and watercolor for the first time. i learned how to 2D animate all on my own???#i did life drawing for the first time. i had an amazing animation internship!#and that's not even to mention all the writing i've done. and all the projects i'm currently chipping away at!#i should be proud of myself :( 4 years is actually a really long time. who'da thunk it#willow whispers
2 notes
·
View notes
Text
300+ TOP UNITY 3D Interview Questions and Answers
UNITY 3D Interview Questions for freshers experienced :-
1. What is Unity 3D? Unity 3D is a powerful cross-platform and fully integrated development engine which gives out-of-box functionality to create games and other interactive 3D content. 2. What are the characteristics of Unity3D? Characteristics of Unity is It is a multi-platform game engine with features like ( 3D objects, physics, animation, scripting, lighting etc.) Accompanying script editor MonoDevelop (win/mac) It can also use Visual Studio (Windows) 3D terrain editor 3D object animation manager GUI System Many platforms executable exporter Web player/ Android/Native application/Wii In Unity 3D, you can assemble art and assets into scenes and environments like adding special effects, physics and animation, lighting, etc. 3. What is important components of Unity 3D? Some important Unity 3D components include Toolbar: It features several important manipulation tools for the scene and game windows Scene View: It is a fully rendered 3 D preview of the currently open scene is displayed and enables you to add, edit and remove GameObjects Hierarchy: It displays a list of every GameObject within the current scene view Project Window: In complex games, project window searches for specific game assets as needed. It explores the assets directory for all textures, scripts, models and prefabs used within the project Game View: In unity you can view your game and at the same time make changes to your game while you are playing in real time. 4. What is Prefabs in Unity 3D? Prefab in Unity 3D is referred for pre-fabricated object template (Class combining objects and scripts). At design time, a prefab can be dragged from project window into the scene window and added the scene's hierarchy of game objects. If desired the object then can be edited. At the run time, a script can cause a new object instance to be created at a given location or with a given transform set of properties. 5. What is the function of Inspector in Unity 3D? The inspector is a context-sensitive panel, where you can adjust the position, scale and rotation of Game Objects listed in Hierarchy panel. 6. What's the best game of all time and why? The most important thing here is to answer relatively quickly, and back it up. One of the fallouts of this question is age. Answering "Robotron!" to a 20-something interviewer might lead to a feeling of disconnect. But sometimes that can be good. It means you have to really explain why it's the best game of all time. Can you verbally and accurately describe a game to another person who has never played it? You'll rack up some communication points if you can. What you shouldn't say is whatever the latest hot game is, or blatantly pick one that the company made (unless it's true and your enthusiasm is bubbling over). Be honest. Don't be too eccentric and niche, and be ready to defend your decision. 7. Do you have any questions regarding us? Yes. Yes, you do have questions. Some of your questions will have been answered in the normal give-and-take of conversation, but you should always be asked if you have others (and if not, something's wrong). Having questions means you're interested. Some questions are best directed to HR, while others should be asked of managers and future co-workers. Ask questions that show an interest in the position and the long-term plans of the company. For some ideas, see "Questions You Should Ask in an Interview," below. 8. What are the characteristics of Unity3D Characteristics of Unity is It is a multi-platform game engine with features like ( 3D objects, physics, animation, scripting, lighting etc.) Accompanying script editor MonoDevelop (win/mac) It can also use Visual Studio (Windows) 3D terrain editor 3D object animation manager GUI System Many platforms executable exporter Web player/ Android/Native application/Wii In Unity 3D, you can assemble art and assets into scenes and environments like adding special effects, physics and animation, lighting, etc. 9. List out some best practices for Unity 3D Cache component references: Always cache reference to components you need to use your scripts Memory Allocation: Instead of instantiating the new object on the fly, always consider creating and using object pools. It will help to less memory fragmentation and make the garbage collector work less Layers and collision matrix: For each new layer, a new column and row are added on the collision matrix. This matrix is responsible for defining interactions between layers Raycasts: It enables to fire a ray on a certain direction with a certain length and let you know if it hit something Physics 2D 3D: Choose physics engine that suits your game Rigidbody: It is an essential component when adding physical interactions between objects Fixed Timestep: Fixed timestep value directly impacts the fixedupdate() and physics update rate. 10. What do you do on your own time to extend your skills? As a programmer, do you work on home projects? As a designer, do you doodle design ideas or make puzzles? As an artist, do you do portrait work? Having hired many people in the past, one of the things I can speak to with authority is that those people who spend their off time working on discipline-related projects are the ones who are always up on current trends, have new ideas, are most willing to try something new, and will be the ones taking stuff home to tinker with on their own time. Now that shouldn't be expected of everyone, but the sad reality is that there is competition for jobs out there, and those who are prepared to put in the extra work are the ones that are going to be in hot demand. Demonstrating that you learned C# over a weekend because you thought it was cool for prototyping is exactly the kind of thing a programming manager wants to hear. Suddenly your toolset expanded, and not only did it show willingness to do something without being told, it makes you more valuable. The only care to here is to not mention an outside situation that might detract from or compete with your day job.
UNITY 3D Interview Questions 11. How do you feel about crunching? At smaller studios, this is the 64 million dollar question. My advice is to be 100 percent honest. If you won't crunch, say so now. It may well put you out of the running for a job, but ultimately that's a good thing. No, really, it is! If the company works a lot of overtime and you don't want to do it, then taking the job is going to be punishing for everyone. Having said that, the last thing any interviewer wants to hear is, "I won't do it" because that predicates a perceived lack of involvement and passion (not that passion should equal overtime, but the perception of refusing to do something before you're even in the circumstances could be the difference between getting a job offer and having the company pass you up). Phrase your answer in such a way that you don't sound confrontational with the interviewer. She doesn't want to get into an argument; she just wants to know where you stand. Understand that this question is meant to gauge, roughly, how you might fit into the company culture. 12. How would you make the games you're playing better? You'd be surprised how often this question comes up, even if you aren't interviewing for a design position. Everyone wants a developer who has design sensibilities because it inevitably means she or he will be more involved and engaged in whatever is going on. Knowing ahead of time how you might answer this question means you'll come off sounding like you've actually thought about a game in development terms. Game studios are looking for people who think as they play -- about what they're playing, how it's done, what could have been improved, and most importantly, what they can rip off. One downside to adopting this mentality is that it becomes harder to enjoy a game for what it is, but that's an occupational hazard in all jobs. Believe it or not, you can answer this question in an entirely positive way. However, if you decide instead to criticize a design or implementation decision in a game, be sure you have a solution to the problem too. It's not enough to moan about the final strider battle in Half-Life 2: Episode 2; you have to have an idea of how it could have been made more enjoyable, perhaps through easier car control, or not destroying all the supply stations so quickly. If you decide to bash a game that the company where you're interviewing developed (and that takes courage; some companies will applaud you while others will diss you for not drinking the Kool-Aid), then ensure that what you're criticizing isn't something subjective but something that everyone has had a pop at. Be ready to back up the criticism with proof that it's an agreed-upon flaw, not just you being nit-picky. 13. Explain what a vertex shader is, and what a pixel shader is? Vertex shader is a script that runs for each vertex of the mesh, allowing the developer to apply transformation matrixes, and other operations, in order to control where this vertex is in the 3D space, and how it will be projected on the screen. Pixel shader is a script that runs for each fragment (pixel candidate to be rendered) after three vertexes are processed in a mesh's triangle. The developer can use information like the UV / TextureCoords and sample textures in order to control the final color that will be rendered on screen. 14. Where do you want to be in five years? Personally, I love this question because it reveals if a prospective candidate has a plan at all or is just drifting from job to job as so many are wont to do. There's nothing wrong per se with people who drift along the currents, it's just that those with a plan (or at least a desire to move in a particular direction) are generally much more interesting people. Plus, they are almost always inherently more predictable, which is always a benefit for employers. Having a desire to move forward helps everyone. It helps you measure your progress, and it gives the company a plan to help you get there. Of course, it does depend on you knowing what you want. Most people tend to know what they don't want, but not necessarily what they do want, which is a problem -- particularly if you express that in an interview. Interviewers would rather have a list of things you want to attain rather than things you don't. One optimal answer is, "Still working for you making games," but it smacks of sucking up, so I'd recommend saying something a little more generic: "Still looking for a challenge and putting in that extra effort to make great games." The best response I've ever heard to that question was, "I want your job!" and the individual who said it to me indeed has my old job! But be wary of sounding confrontational. 15. Why vectors should be normalized when used to move an object? Normalization makes the vector unit length. It means, for instance, that if you want to move with speed 20.0, multiplying speed * vector will result in a precise 20.0 units per step. If the vector had a random length, the step would be different than 20.0 units. 16. Why do you want to work here as Unity3D Developer? (This question implicitly includes, "Why do you want to leave where you are?" if you're currently employed.) This question is an open opportunity to show you've done some research on the company where you're interviewing. All companies and interviewers are flattered when the interviewee knows who they are, knows what games they make, and wants to be a part of their experience. Do your homework and put on a good show! Don't say things like, "I need a job," or "I need to move to Sacramento." Instead, pick a few things that are germane to the company in question. The more specific your reasons are tied to the company, the better. "I want to work on FPS shooters" isn't as good an answer as "I want to work on Game Franchise X because I played the first two games and still see potential for future growth of the product." It's sycophantic, yes, but interviewers are as prone to flattery as anyone else -- although don't give that as your only reason. When explaining why you want to leave your current job, the trick is to not be negative. Pick a couple of points that are inarguable, for example, "There was no career development" or "They weren't working on the kinds of games I'm interested in," rather than "Their management is clueless and they are going to die soon." The game industry is a small community -- you could very well be talking smack about your interviewer's close buddy. If you were let go or fired, it's better to say something like, "We decided to part ways," or "It was my time to leave," rather than go into too much detail, unless directly pressed. In that case, the interviewer probably already knows what went down and is just looking to see what you'll say. Answer the question quickly and without negativity, and move on. You want to leave a positive impression. 17. Why deferred lighting optimizes scenes with a lot of lights and elements? During rendering, each pixel is calculated whether it should be illuminated and receive lightning influence, and this is repeated for each light. After approximately eight repeated calculations for different lights in the scene, the overhead becomes significant. For large scenes, the number of pixels rendered is usually bigger than the number of pixels in the screen itself. Deferred Lighting makes the scene render all pixels without illumination (which is fast), and with extra information (at a cost of low overhead), it calculates the illumination step only for the pixels of the screen buffer (which is less than all pixels processed for each element). This technique allow much more light instances in the project. 18. Can two GameObjects, each with only an SphereCollider, both set as trigger and raise OnTrigger events? Explain your answer? No. Collision events between two objects can only be raised when one of them has a RigidBody attached to it. This is a common error when implementing applications that use "physics." 19. What is an Unity3D file and how can you open a unity3d file? A Unity3D files are scene web player files created by Unity; an application used to develop 3D games. These files consist of all assets and other game data in a single archive, and are used to enable gameplay within a browser that has the Unity Web Player Plugin. The assets within a 3D unity file are saved in a proprietary closed format. 20. What's your biggest weakness? Or, if I hired you, what would I regret about it in six months? This is a common question in all job interviews. There are generally two kinds of responses: the brutally honest and damning one ("I get upset with people who don't carry their load"), and the sycophantic one ("I'm a perfectionist"). What most employers are looking for is an honest answer that is followed up with an example of something you have done to work on your weakness. For example, you can say, "My workspace tends to become extremely disorganized," as long as you follow it up with, "but recently, I've put in a lot of effort to go paperless, and I'm extremely systematic in the way I manage my email inbox." The other secret to this question is not so much in the answer but how long you take to respond. If you answer too quickly, you might be suggesting that you already know all your worst points because they are blatantly obvious and you've been told so many times. If you take too long, it will seem as if you're searching for an answer that sounds good, doesn't make you look bad, and is something the interviewer would be happy to hear. Again, it gives the perception that you are being ingratiating rather than honest. By the way, the best answer I've heard is, "I don't know. What do you think I'd regret in six months if I worked here?" 21. What is Fixed Timestep in Unity3D? Why does Fixed Timestep setting affect game speed? Fixed Timestep feature helps to set the system updates at fixed time interval. A queue like mechanism will manage all real-time events that are accumulated between time epochs. If frame-rate drops below some threshold limit set for fixed timestep, then it can affect the game speed. 22. Explain, in a few words, what roles the inspector, project and hierarchy panels in the Unity editor have. Which is responsible for referencing the content that will be included in the build process? The inspector panel allows users to modify numeric values (such as position, rotation and scale), drag and drop references of scene objects (like Prefabs, Materials and Game Objects), and others. Also it can show a custom-made UI, created by the user, by using Editor scripts. The project panel contains files from the file system of the assets folder in the project's root folder. It shows all the available scripts, textures, materials and shaders available for use in the project. The hierarchy panel shows the current scene structure, with its GameObjects and its children. It also helps users organize them by name and order relative to the GameObject's siblings. Order dependent features, such as UI, make use of this categorization. The panel responsible for referencing content in the build process is the hierarchy panel. The panel contains references to the objects that exist, or will exist, when the application is executed. When building the project, Unity searches for them in the project panel, and adds them to the bundle. 23. Why Time.deltaTime should be used to make things that depend on time operate correctly? Real time applications, such as games, have a variable FPS. They sometimes run at 60FPS, or when suffering slowdowns, they will run on 40FPS or less. If you want to change a value from A to B in 1.0 seconds you can't simply increase A by B-A between two frames because frames can run fast or slow, so one frame can have different durations. The way to correct this is to measure the time taken from frame X to X+1 and increment A, leveraging this change with the frame duration deltaTime by doing A += (B-A) * DeltaTime. When the accumulated DeltaTime reaches 1.0 second, A will have assumed B value. 24. Which of the following examples will run faster? 1000 GameObjects, each with a MonoBehaviour implementing the Update callback. One GameObject with one MonoBehaviour with an Array of 1000 classes, each implementing a custom Update() callback? The correct answer is 2. The Update callback is called using a C# Reflection, which is significantly slower than calling a function directly. In our example, 1000 GameObjects each with a MonoBehaviour means 1000 Reflection calls per frame. Creating one MonoBehaviour with one Update, and using this single callback to Update a given number of elements, is a lot faster, due to the direct access to the method. 25. Arrange the event functions listed below in the order in which they will be invoked when an application is closed: Update() OnGUI() Awake() OnDisable() Start() LateUpdate() OnEnable() OnApplicationQuit() OnDestroy() The correct execution order of these event functions when an application closes is as follows: Awake() OnEnable() Start() Update() LateUpdate() OnGUI() OnApplicationQuit() OnDisable() OnDestroy() Note: You might be tempted to disagree with the placement of OnApplicationQuit() in the above list, but it is correct which can be verified by logging the order in which call occurs when your application closes. 26. Okay, we're going to work through a problem here? Often in game job interviews, you will be presented with a problem to solve, or even a full-blown test, depending on the position. It might be grease board work, it might be a conversation, it might be a level design test, it might even be a code test at a PC. The premise is that the interviewer wants to see how you work. Often, once you've answered the question, the interviewer will change the parameters to see what you'll do. But what do you do if you have no clue what's being asked, or if it's outside your area of expertise---> That's a panic moment if there ever was one. Take a deep breath and realize that this is a moment where you need to say, "I'm not sure I understand the question," or "That's not something I've done before." But immediately after that, start asking questions about the problem and take a stab at solving it. That's one of the biggest things you can do at this point -- admit ignorance then have a go anyway. Showing a willingness to try something outside your field of knowledge is huge to interviewers. It shows you want to learn and be more than what you are now. Sometimes, the fact that you tried is more important than the actual result, and sometimes, you'll have an interviewer who will give you hints toward a solution just because you showed that willingness to try. The more junior you are the more likely this is to happen. Occasionally, interviewers will deliberately put you out of your comfort zone just to see how you'll react, so be aware! 27. Consider the following code snippet below: class Mover : MonoBehaviour { Vector3 target; float speed; void Update() { } } Finish this code so the GameObject containing this script moves with constant speed towards target, and stop moving once it reaches 1.0, or less, units of distance? ANS:- class Mover : MonoBehaviour { Vector3 target; float speed; void Update() { float distance = Vector3.Distance(target,transform.position); // will only move while the distance is bigger than 1.0 units if(distance > 1.0f) { Vector3 dir = target - transform.position; dir.Normalize(); // normalization is obligatory transform.position += dir * speed * Time.deltaTime; // using deltaTime and speed is obligatory } } } 28. Can threads be used to modify a Texture on runtime? Can threads be used to move a GameObject on the scene? Consider the snippet below: class RandomGenerator : MonoBehaviour { public float randomList; void Start() { randomList = new float; } void Generate() { System.Random rnd = new System.Random(); for(int i=0;i What's your favorite book? Movie? TV show? ---> Do you prefer open worlds or well-defined quest lines? Do you think a game should/can have both? ---> What's your favorite character class? ---> How would you briefly describe the mechanics of your favorite game to a non-programmer? ---> Do you usually play games to the end? ---> What's your Beta test experience? (No, you're not looking for a QA person BUT it doesn't hurt to hire a programmer who thinks like a QA person at least a little, as in being able to vet their own work before they hand off a fix as "done.") ---> What's your favorite game of ours and why? (If you've only published one game, they better have played it! And listen for their own words-if they sound like they're parroting what they read about your game, it's entirely possible they haven't actually played it.) ---> If you could work in any other area of our industry, what would it be and why? What makes a game fun for you? 31. List out the pros and cons of Unity 3D? Pros: It uses JavaScript and C# language for scripting Unity provides an Asset store where you can buy or find stuff, that you want to use in your games You can customize your own shaders and change the way how Unity renders the game It is great platform for making games for mobile devices like iOS, Android and Web (HTML5) Cons: Compared to Unreal Engine it has got low graphics quality Interface not user-friendly and it is hard to learn especially for beginners It requires good programming knowledge as such most of the stuff runs on Scripts 32. What will you bring to the team? Why do we need you? This is a general question that applies to all interviews. There are two ways to answer: the big answer and the little answer. The big answer requires you to have some knowledge of how the company operates. Who does what---> Your goal is to slot your experience, passion and skills (and if you are a student, your passion, skills, and desired career direction) into any holes the company may have -- and it should have some. Otherwise, why are they hiring---> The little answer is to name some of your previous experiences and best qualities and hope that's enough. Care needs to be taken that a) you don't sound arrogant in assuming the company will die without you and b) you don't say negative things about the company. Statements like, "Well, you obviously can't do good Q/A. You need a good Q/A manager," are likely to go down like a lead balloon. Frame your answer to suggest that you would bring extra expertise, and therefore improvement, to something that's already in place. 33. What game would you make if money were no object Everyone has a pet project they would want to make if they had the chance -- it's just inherent in the game developer psyche. This is your chance to expound on it, and the more realized your idea is, the more it will be seen as proof that you know what you're doing. Taking an existing idea and adding, "but I'd make it cooler!" isn't the answer (the number of times I've heard Q/A staff wanting to become developers tell me they want to remake Counter Strike "but better" is staggering); it just shows you have enthusiasm, but no original ideas. Bonus points if you can take an existing IP license and make a compelling argument for a game out of it. People who can actually do that are at a premium in our industry since most tie-ins, well, suck. 34. What games are you playing? If you plan to work for a video game company, you'd better be playing games -- and you'd better be able to demonstrate that. It's good form to mention some games that are in the same genre as the games made at that company. It's even better if you mention playing some of the games that were actually made there. Again though, don't go over the top. At the very least, play the demo of anything they've produced. You need to be knowledgeable about the genre, what you enjoy about it, and how the development of these games is affected by the genre (as much as you can be). So research the company before the interview. How you answer this question can be a deal breaker or a deal maker for hiring managers. They want to hire people who are demonstrably passionate about the games their company makes. Saying, "I have a level 70 mage in World of Warcraft and a level 40 druid in EverQuest," to Blizzard makes the point that you are immersed in its product genre. Demonstrating some knowledge about older games also shows you're grounded in game history, which is never a bad thing. The wider your knowledge base, the more you can forestall going down blind alleys in terms of implementation and design, which benefits everyone, and that's exactly what a company is looking for in its employees. 35. List out some key features of Unity3D UE4 ( Unreal Engine 4)? UE4: Game logic is written in C++ or blueprint editor Base scene object- Actor Input Events- Component UInputComponent of Actor class Main classes and function of UE4 includes int32,int24, Fstring, Ftransform, FQuat, FRotator, Actor and TArray To create a new instance of a specified class and to point towards the newly created Actor. UWorld::SpawnActor() may be used UI of Unreal Engine 4 is more flexible and less prone to crashes It does not support systems like X-box 360 or PS3, it requires AMD Radeon HD card to function properly Less expensive compare to Unity3D To use UE4 you don't need programming language knowledge Unity3D: Game logic is written using the Mono environment Base scene object- GameObject Input events- Class Input Main classes and function include int,string,quaternion,transform, rotation, gameobject, Array To make a copy of an object you can use the function Instantiate() The asset store of this tool is much better stacked than UE4 It supports wide range of gaming consoles like X-box and PS4, as well as their predecessors Unity3D has free version which lacks few functionality while pro version is bit expensive in compare to UE4 It requires programming language knowledge 36. What is the use of AssetBundle in Unity3D? AssetBundles are files that can be exported from Unity to contain asset of your choice. AssetBundles are created to simply downloading content to your application. 37. In Unity 3D how can you hide gameobject? To hide gameobject in Unity 3D, you have to use the code gameObject.transform.SetActive(false); 38. Questions You Should Ask In Unity3D Interview: What are the core working hours? How do you assign or schedule tasks? Who gets to decide who does what and estimates time? What's the career path for this job? How do I get to progress? What is the process for promotion? What training approach do you use? How would I learn new skills? How are personnel reviews handled? Who does them and how often? Are there any specific development processes used here, for example, Scrum? Who would I report to? If I'm hired, what is the next game I might work on---> How much input would I have on that? Is there a relocation package? What bonus structure or incentives are there? UNITY 3D Questions and Answers Pdf Download Read the full article
0 notes
Text
Progression of M.A.R.S - Weeks 15-20 + Extra Research
M.A.R.S was a very interesting term. There might be another post after this, but for now I’ll give you the full process of what I did so far this term (using screenshots from previous posts).
Note, this may contain extracts from my previous posts because I either forgot the process or couldn’t word it any differently.
Cinema 4D - Captain’s Chair
For our first project, we were taught how to make a Captain’s Chair similar to the one in Star Trek, which if you don’t know, looks like this:
Because of the immense effort I have to take in order to re-create every detail on this chair, I chose to go simple by using basic shapes and sizes.
For this, I started out with a flat cylindrical base. Then, I added a cone in the middle of it to give it that base-y feel. A few more shapes are used within the cone to give the chair a spinning mechanic, which involved me making cubes, cylinders and spheres (I have no screenshots of the underside so imagine it for now). Finally, to give it a seat, I just used cubes and resized them accordingly. Now THAT is a lot of cubes in one model. If I did it practically with clay or super-sculpie instead of digitally, I would have done the same, only with a tougher base.
Then I had to transform the shapes into polygons to have a bigger base, tilted walls and sloped surfaces. This was done by making the object editable, selecting the Polygons selection tool and dragging the faces accordingly. This was tough to figure out at first, but now I think I’ve got the hang of it.
Mudbox - Alien-like Creature
Then we took to Autodesk Mudbox to make an alien. This required us to download a full human figure and adjust it with tools to level out spots, lumps and deformed body parts.
We then had to take THAT to Cinema 4D and make a little animation with the character rig (which also had to be downloaded and applied).
In the animation I made, the figure puts it’s arms into an “L” shape, shakes it’s head, and then kicks the viewer. Afterward, it thinks about what it did and then puts it’s hand on it’s head in shock that it hurt someone.
Nobody was actually hurt in the process, don’t worry.
This was VERY hard to do as the export process was absolutely horrendous and I can’t even begin to tell you how to do it properly because of how problematic it can be.
What I did first was selecting UVs and maps. Then I had to select the options I needed for my character to look good. I enabled paint map saving as well as two other essentials, and added filenames to the bottom of all but the paint map save.
After a lot of trial and error, that was done.
Unity - Gaming Time!
After all that stuff was done, it was time to move into Unity, a games engine! Personally, this was my favourite part of the entire project as I like to game/make games.
First I had to make Terrain by using GameObject > Terrain, and then scale up certain parts of it using Brush tools to lift it up. The textures on it come from Google Images, which have then been imported into Unity to be used there. The cubes, however, are stone cubes (also stock images). They are added by simply clicking on GameObject > 3D Object > Cube. After that, we had to import a Unity package that comes WITH Unity when you install it, which creates a character. A move-able character that you can control.
Then I chose to add a lot of floating cubes and make a parkour-like game as it was very basic and the gravity in-game can be altered to make it look like they’re on another planet. Some of those cubes move up and down continuously by code, which is what you see in the image above.
For the code, we originally used Adobe Dreamweaver as that was what we had in our selection of coding programs. We then switched to Visual Studio 2018 as that is apparently easier to handle your code with (sometimes it gets on your nerve with the auto-completion mechanic).
If you want to know, the game is written in C#. If you know Java, you can use that too. I currently know most of C#, so I chose to use that. If you’re curious, I know a little bit of C++ and Java. Anyway, moving on.
There were a lot of changes I chose to make with the game to both make it work properly and be good. This included having a lot of problems with code, movement and placement, and since this was a game that I played a lot, it was very easy to get distracted.
RESEARCH TIME
Kerbal Space Program
youtube
Kerbal Space Program is a game made in the Unity engine that appears to be a game where you have to stock up resources and upgrade your vehicle to fly it into space. While in space, you can visit other planets (and even land on them to explore!). Personally, I have never played this game. It does look interesting though because it requires strategy and good thinking in order to complete it, so I might consider getting it.
Escape From Tarkov
youtube
Escape From Tarkov is another game made in the Unity engine that appears to be a game similar to Half-Life 2 (which is a game I have played), which requires you to run around with weapons and kill off people who try and capture you or leave you for dead. Just like Kerbal Space Program, you can modify your accessories/weapons to make them look better or insanely overpowered.
Hearthstone
youtube
Hearthstone is yet another game made in the Unity engine that appears to be a trading card game similar to Yu-Gi-Oh (which is another game that I have played). The objective of the game appears to be to wipe out your opponent’s main card to win (which has a set amount of hitpoints, which is the amount of hits it can take before it gets wiped out).
BACK TO UNITY
The final part of this project involved me having to make a timer, a menu and give the planet a sense of darkness. The first thing I added was a timer, and a fail counter.
During the development of levels 3 and 4, I came across a cheat, where you can just jump up the very end of the landscape and skip levels 1 and 2, going straight to level 3. However, that is now impossible to do without hacking the game.
I have written a check in the game’s code to check if the player is far enough to the side, near the edge of the terrain. If they are, and they haven’t completed level 2 yet, they will be stopped in their tracks, and “YOU! SHALL NOT!! CHEAT!!!” will pop up in the interface.
I put the text there for humorous purposes, as it calls out the cheater directly. I might change this text however, or just remove it entirely, seeing as it isn’t really needed. The text is also, you guessed it, a reference to “You shall not pass” from Lord of the Rings (I haven’t seen the movie but I know of the memes associated with it).
Another feature I have added in is Fog. Fog is directly implemented into Unity, so I just have to check a box within the “skybox” that says “Fog”, and this is the result. I’ve added it because it adds a dark feeling to the world and also makes invisible objects visible again (cubes that blend with terrain behind them, making them very difficult to see).
I have built the menu outside of the map, VERY far away, so that even if fog wasn’t enabled, nobody would be able to see it from the planet map.
The menu was made with triggers, or invisible objects that make the game do things when the player interacts with them. Say for example, if you want to walk into a cube and get teleported to another map, you can set it to do that via triggers and… ahem, code.
If you cannot understand this, don’t worry. First of all, the game checks to see if the player is colliding with a mesh (which is what the trigger is made of, mainly). It will then check the TAG of that object, whether it’d be Mode 1, Mode 2, Void or whatever.
If one of the tags matches it’s respective tag in the list of statements, then it will either teleport the player or make the game do things, such as increasing the fall counter by 1 or setting the level count to 3.
Now the game is fully built and is ready to play on Windows, Mac and Linux.
What was your initial plan with this? What did you focus on and WHY?
I chose to focus on game design as that is my main comfort zone within the three, plus it is the easiest for me to get the hang of. Plus, I have about 8 years experience in game design (although 7 of them were spent in the Scratch engine, then I moved to Game Maker and Unity).
I chose to do it because I couldn’t see myself making a standout sculpt or very wacky spaceship with interior design. Maybe I could’ve done one of the other two I had more time.
What is your story?
The story is that the first people who went to the moon for the first time in 1969 found a mysterious object on the way back to Earth. This was thought to be a planet, so they sent somebody else there (who is you, the player). They are now trapped on the planet with no way out but to get to the top of the cliffs and hope.
Inspiration?
Apart from the moon landing and my game design experience, none.
Review?
I... have just explained that in the rest of the post beforehand. I went over all three aspects.
Final Evaluation?
Personally, I think my game turned out very good. The only thing I would do to improve it is learn more of Unity to add more fonts and even a glitch-like effect with night vision, along with maybe a few more levels or even some enemies that try and stop you from progressing. However, I couldn’t do so due to the fact I had to test it over and over again for about four hours, which didn’t really allow me to stick to my original plan, which was to have a boss-like level in the game where the platforms get destroyed as soon as you step on them, making it a very difficult Level 5. In all seriousness, this was a very fun project for me as I enjoyed every single step of it. I have learned a lot about the digital industry and 3D game design. The only hard steps I had was near the end when I compiled the game and found out my interface had to be re-aligned, along with a menu issue, which instead of using a proper buttoned menu I used hotkeys instead (cheating). Again, if I had more time, I would’ve made a proper menu, made the boss level and even more elements. But now we’re here at the end, with a game that is good enough... and difficult as well, for everyone else. Because I have experience in C# coding, that part wasn’t hard at all. All I had to learn was the proper elements of Unity as there are a LOT of code tidbits that Unity adds to make things easier.
Final Research about Cinema 4D - 5 Examples of what was made in it
1 - This picture was made in Cinema4D using lighting, shapes and fog. From the looks of it, it looks like the car in front of the driver is going to pull out of the fuel station, or is just going to sit there forever. I like it because it looks so realistic, which is very tedious in 3D software.
2 - Another realistic picture, but this time with a building in the middle of a forest. This looks like it wasn’t even made in Cinema4D at all, and that is why I like it.
3 - A semi-realistic picture of a giant vehicle puffing out red smoke before (what looks like it will be) driving off, crushing about 400 people. This reminds me of Cars 2 for some reason. Deserted village, car-... oh wait, the car is a TOASTER? Well then... Anyway, I like this picture without reason. I just like it.
4 - A realistic picture of a sink with some utilities beside it. This was done with transparent shapes to give the water it’s reflective effect, hence the mirror (which is probably just a plain copy of the scenery from this side). Again, I like it because it is a realistic picture, plus the detail.
5 - Another realistic picture that doesn’t look like it was made with Cinema4D at all. It looks like an abandoned fuel station with what looks like a giant ball near it. Do I have to say I like it? Well yes, because of the detail it has to make it realistic.
These five images are directly pulled from the Cinema4D website, the gallery: https://www.maxon.net/en-gb/gallery/
Phew, that was a lot of research and reflection. Again, there may be another post after this, but if not, then I’ll see you in my FINAL MAJOR PROJECT!
0 notes
Text
is the entry-level RTX fast enough for ray traced gaming? • Eurogamer.net
It’s rare that we review graphics card variants at Digital Foundry but in the case of the RTX 2060 KO from EVGA, we’re going to make an exception. Nvidia’s entry-level, feature-complete Turing card sat at a $349 price-point for quite some time – a touch pricey perhaps when the significantly superior RTX 2060 Super turned up costing just $50 more. However, with this new EVGA KO model clocking in at $299, it’s time to re-assess the product and specifically, just how capable the card is in handling games using hardware-accelerated ray tracing.
Primarily, it’s the RTX aspect of the 2060 that sets it apart from its nearest AMD competitor, the RX 5600 XT. Its ability to tap into the DXR API and by extension access the full range of visual options available in supported games is obviously a nice feature to have – and with ray tracing confirmed for the next-gen consoles, the broader adoption of RT is a case of not if but when. On top of that, the inclusion of Turing’s tensor cores allows for the 2060 to access hardware-accelerated machine learning features with the AI-powered DLSS upscaling pretty much the only application for this technology in the here and now. This is all in addition to standard graphics power that’s generally in excess of the RX 5600 XT – to the point that AMD had to deliver an 11th hour BIOS upgrade to bring its latest Navi release back into contention.
However, while generally well -received for its price vs performance level (especially with the recent haircut on pricing) there’s a lot of discussion surrounding the RTX 2060’s prowess in terms of delivering accomplished ray tracing support – and perhaps rightly so, when looking at the first wave of games with DXR functionality. In the past, I’ve managed to get an effectively locked 1080p60 performance level with the RTX 2060 when playing Battlefield 5 with ray tracing enabled – but it required some options tweaking and an overclock. On top of that, there’s perhaps a broader question to answer: is 1080p60 actually good enough to begin with bearing in mind that the RTX 2060 ordinarily performs rather well at 1440p?
These are all pertinent questions but perhaps just as important is the technical make-up of the KO version of the RTX 2060 itself. Clearly, corners are cut to deliver the more aggressive pricing. Nvidia’s reference model – the Founders Edition – is a more deluxe product with superior build quality, improved power delivery and higher quality materials. While possessed of a decent metal back plate, the KO’s shroud is plastic, the cooler is less substantial and its four-phase power delivery does the job but limits overclocking potential. Ultimately though, the main difference you’ll actually notice during gaming is that it’s somewhat louder than the Founders. That’s the only real grumble I can muster against it.
youtube
The latest DF Direct sees John and Rich sit down to discuss the topics raised in the new announcement from Microsoft.
However, as initially discovered by Steve Burke at GamersNexus, the 2060 KO is somewhat fascinating in that it uses a TU104 Nvidia processor – the same processor that powers the RTX 2070 Super and RTX 2080. It’s a salvage part, with CUDA cores disabled to match the 1920 complement in the Founders Edition’s standard TU106 processor. In my tests, I found performance to be entirely identical, with one exception. As GamersNexus discovered, the CUDA path in the Blender rendering tool delivers much faster performance than existing RTX 2060 cards. The extent of the boost varies on the complexity of the workload, but one example demo I tested delivered a 19 per cent reduction in render time.
However, in all other respects, the KO performs exactly as an RTX 2060 should do. The pared back power delivery system means that you can’t ramp up the power slider in MSI Afterburner, meaning that overclocking can’t be pushed to the max as it can in other cards. However, I still managed to add 120MHz to the core and 500MHz to the 6GB of GDDR6 memory and even with power constraints in place, the card did deliver that extra performance, adding around five per cent overall to frame-rates. These are the OC settings I use on my standard Founders version, so I don’t feel particularly short-changed here. The only real trade is the noise factor: overclocking makes a louder-than-usual graphics card even less discreet.
All told then, EVGA’s more price-conscious RTX 2060 delivers pretty much everything you’d want from a card of this class, it’s just somewhat noisier than the reference design. Its performance parity with the original Founders version extends to ray tracing support too, which is primarily why I decided to revisit the RTX 2060 in the first place, which leads us onto the key question: is the entry level ray tracer powerful enough to deliver a decent gaming experience?
It’s a difficult question to answer because we are still in the early days of the transition across to the next generation of rendering technology but we’ve already some a long, long way. First of all, if you’re intent on sticking to native resolution rendering, 1080p was – and is – the natural target for DXR gaming on this class of product and I really would recommend dialing in a +120MHz core/+500MHz VRAM overclock for additional stability in performance. The biggest issue I have with early DXR games in particular is that the lowest frame-rate areas are much more of an issue than average performance.
This gets you to 1080p60 in Battlefield 5 with medium DXR paired with ultra-level rasterisation features and high quality textures – good enough to get a good ray traced experience, but nothing like the performance of the standard non-RT edition of the game. DXR medium gives you the bulk of the RT experience, with real-time reflections scaling across settings according to the roughness cut-off in the materials. The higher up the scale you go, the more materials exhibit ray traced reflections. Based on later RT-supported titles, the performance hit is somewhat high, as you may expect from a first-gen DXR game.
Shadow of the Tomb Raider is another early example of DXR implementation. In fact, alongside BF5 it was the first RT experience we had way back at Gamescom 2018. Its benchmark suggests that the performance hit of RT is fairly light compared to Battlefield 5, but simply starting Lara’s adventure from scratch demonstrates that this patently not the case. As you ramp up the DXR preset, Tomb Raider replaces more and more of the rasterised shadow maps with higher quality, more realistic RT alternatives, with the ultra setting effectively moving the entire system to DXR, where foliage in particular is particularly taxing on the GPU. Again, there are moments where the RTX 2060 can’t sustain 1080p60.
The final first-gen DXR title I tested was Metro Exodus, which possesses an utterly beautiful ray traced global illumination solution. Setting the game to the high global preset with DXR similarly set to high effectively gives you 1080p60 with some minor dips into the 50s in more challenging scenes. It’s an experience to savour, but again, the fact that a card that performs so well at 1440p in standard 3D gaming has to render at 1080p to get acceptable performance is going to be an issue for many. The RTX 2060 can deliver a good ray tracing experience but the question is whether you’d take that hit when the standard game still looks so good.
Of course, throughout the history of gaming, pushing the frontier of graphics technology in the PC space has always come with a performance cost, whether we’re talking about programmable pixel shaders, hardware T&L, or just about any of the software-based innovations found in Crysis. Nvidia’s original plan was to offset most, if not all, of the performance hit by using the tensor cores, with machine learning-based upscaling replacing the temporal anti-aliasing solutions in most modern games. It didn’t go quite to plan. If RT had a rocky start, it’s been harder still for DLSS, where results have historically varied from rather impressive to not so good.
Witcher 3: Ultra, Post-AA, No Hairworks
RX 5500 XT 8GB
RX 580
GTX 1660
RX 590
GTX 1660 Super
GTX 1660 Ti
RX 5600 XT
RX 5600 XT OC
RTX 2060
So is the RTX 2060 good enough for ray traced games? I can understand some of the bad press the card has got in this regard based on the kinds of results I’ve just talked about from the first-gen games – but technology is constantly improving and recent titles are showing some genuine promise. Obviously, the more GPU power you have at your disposal, the better the results you can expect, but the RTX 2060 is important because it’s the baseline performance level Nvidia has set for access to the next generation of GPU features. I suspect that when the new Ampere architecture cards arrive later this year, we’ll still have RTX 2060-class performance – it’ll just be cheaper: RTX 3050, anyone? With that in mind, I think it’s just as important to test RT support in the latest games on this class of hardware as it is to dial up everything to the max on an RTX 2080 Ti.
DXR implementations are improving which helps the case for the RTX 2060 but I think the most radical leap I’ve seen has come from Nvidia’s top-to-bottom revamp of its AI upscaling solution, DLSS. It started with Remedy’s Control, a game that ships with a simply amazing DXR feature set – it’s the showcase game for ray tracing in the here and now, in fact. To begin with, the performance outlook seems rather familiar when running this game on the RTX 2060. Even on DXR medium – reflections only – paired with mostly medium settings (in line with the console versions), performance often lurks in 50fps territory but can drop down into the high 30s.
However, the revised version of DLSS that Control ships with allows you to set internal resolution to 720p, with the algorithm upscaling pretty well to 1080p. The upshot is that not only are we now well north of 60fps in almost all scenarios, RTX 2060 owners can engage the high DXR setting and still experience smooth performance with the complete ray tracing experience for the best RT game on the market. Impressed by the results, I decided to push my luck: I opted for 4K DLSS from a 1080p base resolution with all RT features still active, but frame-rate capped to 30fps. The end result is an experience that still showcases DXR beautifully but delivers a cleaner overall image than Xbox One X’s 1440p-based UHD output while running at the same frame-rate. The comparison is interesting but the comparison gallery above should prove illuminating – Remedy’s TAA solution does have some advantages.
Crysis 3: Very High, SMAA T2X
RX 580
RX 5500 XT 8GB
GTX 1660
RX 590
GTX 1660 Super
GTX 1660 Ti
RX 5600 XT
RX 5600 XT OC
RTX 2060
In terms of image quality, Control’s DLSS solution is good but a recent, radical algorithm upgrade has changed everything. As we’ve already discussed in other Digital Foundry articles, the new ‘DLSS 2.0’ is capable of delivering image quality comparable with native rendering resolution using anything as low as a quarter resolution base image. With Wolfenstein Youngblood set to console-equivalent medium settings on DLSS performance mode, we’re getting AI upscaling from 540p to 1080p which looks as good (if not better) than the PlayStation 4 version of the game. The performance boost with RTX 2060 is enough to deliver a great 1440p experience with ray tracing enabled – or alternatively you can re-deploy DLSS with RT disabled to deliver 4K gaming at 80 frames per second or upwards. This is not bad at all for a $299 graphics card.
This is all a roundabout way of saying that the promises Nvidia made back at Gamescom 2018 are now much closer to reaching fruition and the building blocks are in place to ensure that the RTX 2060 ‘entry level’ ray tracer is in a far better position now than it was in the early, uncertain days of support. But should you buy one? It’s a tricky one. While the card was priced closer to the RX 2060 Super, it was very easy to recommend saving up for the more powerful card. It’s a good chunk faster and features an additional 2GB of memory.
Typically, the best GPU for you is always the most expensive one you can afford and nothing has changed there, but the RTX 2060 price cut now puts a lot of distance between this product and its Super sibling. With that in mind, it’s a worthy contender at this price level and for all of its various cutbacks, the KO model still holds up as a decent RTX 2060 overall – and it’s obviously brilliant if you use Blender at all. However, I would check that the KO is actually good value in your neck of the woods. In the UK at least, cheaper RTX 2060 models are available.
3DMark Port Royal – 1080p
RTX 2060
RTX 2060 Super
RTX 2070
RTX 2070 Super
RTX 2080
RTX 2080 Super
RTX 2080 Ti
Generally though, I’m finding PC hardware reviews quite difficult right now. I think the whole process of making any kind of PC component purchasing decision is rather challenging. Investing serious money in a CPU or GPU is generally associated with the idea of not needing to upgrade for another two or three years. Consoles define the baseline and when we don’t know how much performance or what kind of features a next-gen $400/$500 box from Sony or Microsoft will have, and with that in mind, it makes the concept of sinking a fair amount of cash into a PC upgrade at this point in time a real issue. I generally think that the best strategy may be to sit tight unless you really need a big upgrade in the here and now.
The benchmarks speak for themselves though and clearly the RTX 2060 has a lot to offer. However, I do have concerns about the card’s allocation of six gigs of GDDR6 memory, especially when we factor in ray tracing support. Wolfenstein Youngblood grumbles about running DXR with the best texture quality on the 2060, while performance degrades significantly in Battlefield 5 if you’re using DXR in combination with ultra quality textures. I also seem to get sporadic low resolution textures in Control when I ramp up the DXR feature set with DLSS active, upscaling to higher resolutions. The overall outlook for the RTX 2060’s performance is looking good on more modern ray tracing titles, the new DLSS seems to have the frame-rate hit covered while delivering excellent quality but I do wonder whether the VRAM limitation might be a bigger issue further on down the road.
Overall, the RTX 2060 looks a touch more compelling now than it did back in the day – pricing has stabilised, it always has been a good 1080p and 1440p performer – and while you’ve always had access to the RTX feature set, improved ray tracing implementations and a fundamental revamp of DLSS are combining to give impressive results on new titles. I’d like to see ‘DLSS 2.0’ re-engineered back into key games like Shadow of the Tomb Raider, Metro Exodus and Battlefield 5 – and especially Control. It would be a strong statement of commitment to the entry level RTX power band, it would fulfil some of the promises made back at Gamescom 2018 and potentially, it go a long way in rebutting the critics. In the meantime, all eyes are on the next wave of DXR games and what kind of experience the 2060 is able to deliver with them.
from EnterGamingXP https://entergamingxp.com/2020/02/is-the-entry-level-rtx-fast-enough-for-ray-traced-gaming-%e2%80%a2-eurogamer-net/?utm_source=rss&utm_medium=rss&utm_campaign=is-the-entry-level-rtx-fast-enough-for-ray-traced-gaming-%25e2%2580%25a2-eurogamer-net
0 notes
Text
Smash Everything Post Mortem
The most important thing to remember is that Smash Everything is a game made by students. It’s a unit, and it’s graded. As such, levels of involvement, commitment, and effort vary. Some students invest great amounts of time, some are looking to do bare minimum. Which is not a complaint, merely an acknowledgement of differing priorities and circumstances, and it is the most important thing to figure out early and manage.
Despite internal issues, the project was well-managed and, although the game is not complete, turned out pretty well for a group of people who had mostly never done a project like this, who were just taking their skills learned at uni and putting them into practice.
Things that went well:
1. Character Concepts
This was the group’s first task at the beginning of the semester when motivation and interest were still high, group members were keen, and everyone still had time. We were fortunate that from the concepting there was one idea that we all liked and agreed upon.
2. Smashing
We had a prototype up and running early in order to help us decide on a definitive direction as well as test out our core mechanic – smashing - to ensure that it felt fun. This is a great way to test and prototype mechanics – make sure they feel fun on their own and then build around them. The smashing didn’t really change from its early iteration.
3. Enemy Concepts
After some struggle to get other concepts and group agreement on other aspects of the game, enemy concepting had the benefit of being streamlined based on the knowledge gained from previous pitfalls. There was a simple template made that displayed exactly what was wanted from it: 4 empty boxes, asking for a sketch in each and one potential ability that this enemy would have. All the sketches were gathered and put into a Google form to get voted on by team members. Ones with the most votes were implemented. This could have potentially gone poorly had the group liked wildly different designs, but thankfully while there were some outliers most of the votes went into the same designs.
4. Enemy Models
By the time we got to this stage, we were a bit behind in the development process from where we wanted to be and decided to simplify our enemy models to save time. It worked out really well. Rather than being detailed models with texture maps, they become blocky, solid color shapes that were still surprisingly cute and worked well within our toy theme to seem like little plastic toys.
5. Animation
There had been 2-3 weeks allotted to animation, with another 1-2 weeks as a potential backup, as we had at least 7 models and 2 animations for each enemy and 5 animations for the main character planned. Enemy animations were smashed out in a week; they were simple, but they worked and looked great. Animations for the character took a couple weeks, which was within the budgeted time, but hit a couple snags (problems with the rig, some redos, and some animations were cut entirely).
6. Music
Some groups were lucky enough to get a sound student on board for their projects, but we were not such a group. I think that may have worked out a bit in our favor regarding music, as we were able to include several different songs from a cool royalty-free library. Deciding on the style/genre of music for the game was a breeze – we all agreed we wanted something upbeat, maybe techno or K-pop-py – and song selections were spot on.
Struggles:
1. Communication
A surprisingly big issue, despite using Discord, Trello, and having in-class discussions. This issue existed for a few reasons: disagreements on the second item on this list – the vision for the game, missed information, a lack of clarity and notes. The missed information was frustrating, as there’s no easy fix for either willfully or accidentally missing information – documents not being read was a big culprit, as they tend to be dry and boring to read, even if they do contain important information. Meetings likely would have benefitted from minutes and better note-taking, and definitely from being hard-copied and shared with everyone. Disagreements are harder, as communication is only going to continue to breakdown until everyone can get on the same page, and they aren’t necessarily easy to solve.
This could be a very long dissection of each communication issue, but instead here is how to try and avoid it: many students are shy or uncomfortable sharing with relative strangers – don’t be or force them to talk by specifically asking for their opinion. That being said, this is a course comprised of a lot of gamers and some of them have been molded by toxic communities – remind them to be respectful and considerate. If the team can’t come to an agreement, it’s up to the project manager to make a call – if the team really can’t abide by it, take it up with a higher authority, otherwise suck it up and move on, but still try to incorporate ideas from every member where possible.
2. Vision
Not being able to agree on a clear vision for the game was a long struggle that made progression a bit of a slog; unfortunately, it wasn’t an easy solve since there was no majority, just a lot of different ideas. In the end, a few different game concepts were drawn up and the team just had to pick one. It wasn’t possible to please everyone, and trying to was ultimately just wasting time.
3. Character Design
Concepts went so well it was a shock that the actual character design wasn’t smooth sailing. Once we had the concept we liked, a character turnaround came in, and suddenly it was clear that there was a big problem because the turnaround looked nothing like the concept art. There were two problems here: we didn’t have a definitive art style yet and we had skipped over some crucial steps in the design process (as going from concept to turnaround is generally a big no-no, there’s meant to be iterations in between to decide on a final look). This actually took weeks to resolve with character exploration, nailing down a look, color testing, and outfit designs. It was worth it in the end to have spent the time to do it right – no skipping steps! – as we had a character we and others really loved.
4. Levels
No one on the team was really a level designer, and our level concepts weren’t as clear as they could have been. That meant the whole level design process ended up being longer than it should have been. Concept art seemed to go better with some explanation text. Started looking at toy shop layouts and the kind of stuff that would be found in them, but realized that putting in shelves was going to be a bit problematic with our camera angle. Ultimately this was solved with a new/tweaked gameplay concept that ultimately ended up scrapped, but it introduced jumping and platforms and that stayed.
5. UI
No one on the team was really a designer or a UI designer, not even the person assigned to be the Design Lead. So we either fudged our way through it or left it really basic, where functionality exists but it could definitely use a makeover.
There was also some contention over how to structure the in-game UI. Early playtesters thought the game was something they had to do as quickly as possible and we wanted to try and correct that perception. Suspecting that the timer countdown being in the top center and therefore at the top of the visual hierarchy may have been a contributing factor, the score got moved central and the timer to the side. Players were no longer trying to speed through, but now some weren’t noticing the timer at all. This may still be solved by placing both items central, and using size to indicate hierarchy importance.
Problems, Failures, and Scraps:
1. Pipeline Processes
As mentioned earlier, students tend to want to put in the minimum amount of work required, and so one of the things that got lost in the process was the process. Workflow follows the same structure, if not always the same order, but generally looks something like references, moodboards, concepts, iterations, design polish, turnaround, final model. References and moodboards were rare to nonexistent for concepts and animation, as were iterations, polish, and turnarounds. Even enemy designs went straight from concept to final model; they turned out great, but that was truly just fortunate, and it could have gone very poorly.
2. 2D
Before Smash Everything had any kind of real identity, one of the things to decide was whether the game would be 2D, 3D, or some 2.5D mix. We had really only learned about 3D modeling and animation through our uni course, so there was good reason to go that direction. The downside being is 3D modeling, texturing, and animating can be quite lengthy – we obviously trimmed that work down to make it work. But before that was an idea, 2D was a fair solution for being quicker, especially for the amount of stuff we wanted to include. The downside being is that it meant learning new processes and software.
Compromised on 2.5D, a 2D sprite in 3D space, but ultimately it didn’t look great so 2D was scrapped altogether.
3. Enemy Behavior
Enemies were going to have all kinds of cool abilities when we were still young and naïve, like AoE slows, charges, stuns, whirlwinds, etc. That got cut pretty quick at the implementation stage, generally sticking with simple melee or ranged attacks.
One enemy had to have some drastic changes and cuts, the Snail, as originally he was meant to leave behind a trail of gas – that maybe dissipated or maybe lingered – that initially did a slow but since slows were gone it was just going to be another damaging ability of players ran through it… we just had no idea how to do it. So now he’s just harmless hammer-fodder that does his best to run away from your hammer. Slowly.
4. Skybox
This is one of those things where there is a surprising lack of tutorials on how to make one of these. Made an early skybox that was meant to be temporary as it was a bit of a fudge – made it seamless just by making a repeatable texture rather than through any skill, proper technique, or software.
5. Saving Scores
This was something mentioned in a previous blog post. Score counter, no problem. Saving scores and names, apparently not so easy. No one really knew how to do this, but for this there are tutorials, and so it should have been okay from there. Except it wasn’t. Unity allows input fields and character limits on them, so creating an input field with a 3-character limit for initials was no problem. Rather than use JSON, which may have been a bit out of our depth, went with saving scores and names in player prefs and then allowing the high score list to read from player prefs and adjust accordingly. And it worked… in the Unity editor. Once it was built, though, it was broken. Sometimes the score would save and write, sometimes, and names definitely weren’t being saved and/or written. Tried to even hardcore a cheeky fix in, but to no avail.
Not having scores save properly was a big disappointment, as scoring was kind of a big deal.
6. Smashables
Early in the game design process, Smashables were something that existed. Before we knew what we wanted to smash, it was just going to be a slew of items and inanimate objects. Even after we decided to include enemies, the Smashables idea persisted... until it didn’t. It just kind of slowly faded out of the game design as enemies were implemented, made a brief resurgence, and then just disappeared completed. No one missed them, they didn’t feel necessary, but they are one of those things that could easily fit back into the game - perhaps as a future addition.
0 notes