Jump to content
  • Advertisement
    1. Past hour
    2. Eternal

      Creating a global thread

      This should do it: std::thread t1; int main() { t1 = std::thread(functionToThread); t1.join(); return 0; }
    3. If your objects are less than around 10km in diameter and have details around 1mm in size. Then use floats for your vertex data. If your objects are larger then 10km in size, split them up into sub-objects and still use floats for your vertex data. If your objects are bigger than 10km, have details smaller than 1mm, and can't feasibly be split up... are you sure? Well, go ahead and use 32bit integers for your vertex data. If your objects are bigger than 1000km, have details smaller than 1mm, and can't feasibly be split up... you're shitting me? Well, go ahead and use doubles for your vertex data... But this is very odd. If your objects are far, far smaller than 1km, consider using 16bit fixed point for your vertex data. If your world is bigger than 10km, then go ahead and think about fixed point, hierarchical (with high precision intermediate results) or 64bit transforms on the CPU side, but there's still no need for doubles on the GPU. Once you've computed your model-to-view transforms in high precision, you can safely truncate them to 32bit precision before sending them to the GPU, as the final matrix will take relatively small model-space values as input and produce relatively small view-space outputs. Just never use raw global-origin world-space values on the GPU.
    4. If you are convinced that float isn't enough for you, then why not moving to double ? In a previous work we had a simulator capable to show very tiny (molecular) up to very huge (galaxies and even larger) without any seams. We were using doubles in all the chain. So this is feasible. But doing so has a cost: everything will be far slower than on full-float systems (and not just slightly slower). This all depends on what you want to do. If people here cannot know what you are trying to achieve, you'll get answers, but tons of guesses, of this can be done, or you might be doing something wrong, or you might be able to do something in a better way. But all these throws are just thrown as guesses. If you want (and it seems you are looking to find the best answer) to know if you should move to double and where (data, CPU, GPU...), then give people concrete explanation of what you are trying to do. ie. Are you doing a space simulator ? Are you doing a city visualizer ? Are you doing something more on the science side ? Or is it that your game map can be very huge and you lack LOD ? All these scenarios might end-up with different solutions to resolve inaccuracies.
    5. Bregma

      Creating a global thread

      You can't do what you're trying to do: create an uninitialized thread object and initialize it later. You might be able to create a thread at namespace scope. You still have to initialize it.
    6. For normals or any other normalized vectors, you likely don't need even float precision, so a half (16-bit float) should be plenty per component, so a half3 for example. But most renderers I think would even go for less precision in the vertex buffer, for example storing all xyz components of normals in a 32 bit uint (8 bit per component, like a signed byte, so 24 bits, you have an extra 8 bits left over, for something else). I specifically am a fan of storing normals in model files as float3, just so that it is backwards compatible any time you need to update the renderer to support a different kind of compression. Then I pack the normals into 24 bits inside the vertex buffer, and use the remaining 8 bits for eg. material index. For positions, usually float precision should be enough. However, it is completely feasible to have your position components as halfs in the vertex buffer, and only have full 32 bit precision for the instance world matrix. The vertex shader can read the vertex buffer with half the bandwidth, but after loading, it will store it in 32 bit float register, so after this all computations with world matrices will be 32 bit precision. As for double precision, it will probably be very slow on the GPU (if even supported). In case you are expecting precision errors when shading, you can shade in view space instead of world space, so precision will be relative to the distance to the camera, not the world origin.
    7. This is the second of a weekly series on about a casual mobile game I will try to develop from start to release in #8WeekGameDev. This weeks PC browser demo is up on Kongregate here and a youtube version of the blog here. This week I added obstacles and three separate play modes to the game. Bad guys: There are three types of obstacles added. 1) Enemies that move along the track and when they hit you, you both bounce off each other. The basic code was straight forward. Some checking for what direction a pawn (player or enemy) is hit from. If hit from behind it does not affect the pawns movement. Also, there some working sizing colliders and checking to make sure pawns passing each other on two arcs on the same track do not collider. I did not make the enemies kill players as that would be a sudden death, which not the play feel I am going for. I am going more for a Tetris feel, where if you make a mistake you can recover if you don't panic and it is early enough in the game. 2) Walls are enemies that don't move. Very simple subclasses and setting speed to zero. 3) Empty tiles are tile without paths on them. no special code was needed for this, which was nice. For the obstacle generation I use random selection based on the idea of putting chits in a bag and choosing one. I put the chits back in the bag after each draw. For example, in slow mode, the bag starts with 6 chits for "none", and nothing else. So when I draw a chit for the first row I always get "none" and there are no obstacles. Then each time a new row is added I add chits to the bag. 0.1 wall chits 0.2 enemy chits 0.01 empty chits So for the second row of added tiles, none is still the most common chit but there a chance of an obstacle being placed on a tile. By the time the 10th is row added about 1 wall will appear in each row. By row 20 half the tiles will have enemies. The bag would contain 4 - none chits 2 - wall chits 4 - enemy chits 0.2 empty chits This basic list of outcomes with the chance for each (FreqPair) is code from an old project so did not take much work. I made the class serializable so I can change it in the inspector. [System.Serializable] public class FreqPair{ public string name; // e.g. wall public float freq; // e.g. 2 } I also made some extra code the limits the number of empty tile in one row, or else you could have all empty tiles and there would be no way past that row. Judging difficulty and playability is a difficult problem. So decided to put off the decision. I made three modes of play. 1) Fast - Fast movement but obstacle frequency increases slowly. 2) Slow - Slow movement but the frequency of obstacles increases quickly. 3) Strategy - each time a button is pressed the game advances one turn. During the turn the tile flips and the player and enemies move for a set amount of time then stop. All buttons are disabled when the turn is running. Also, cooldown counters for buttons were changed to advance one unit each turn. I added the 8th symmetric transformation (identity) which does nothing but does cause a turn to run. My inner mathematician was happy to see all 8 members of the group of symmetric transforms on a square represented. For each mode of play there is a GameSettings object and obstacle generator object. This lets me set the player's, start speed, acceleration, max speed. The cooldown time of buttons. Also to set frequencies of obstacle separately for each mode in the inspector. I add the mode being played in each game to the analytics. Also, I added separate high scores for each mode to the Kongregate version. This should give me an idea of the popularity and difficulty of each mode. I enjoy the slow mode the most, it is busy enough that I have to stay focused and plan ahead, but not so fast that I panic. Fast is too fast for me but in general, I suck at this type of game, so I wanted to set the difficulty level too hard for me. I think I may have screwed up the strategy turn length and made it too difficult. I added a green outline on the tile you are on so you know which tile is going to flip even when you are near an edge. I found out it was frustrating trying to judge which tile you are on. The green outline made the game much more enjoyable for me to play. I added a new avatar and made enemies. Now you can see why I buy artwork instead of making it. This avatar and enemies are just enough to let me see that they are turning to follow the tracks on the tiles. So I know if my code is working. Please try out the game on Kongregate here, feedback is always welcome.
    8. What role does 'canMove' have in this? if you set canMove false in your controller so it early outs on FixedTick what is preventing the animation of the ybot child object from continuing and moving it away from its parent?
    9. Today
    10. GPUs can be very slow with doubles so there's usually a better way, but it depends on the case. Either find a way to change your calculations so that floats are sufficient, or use doubles only on the CPU. For example in the large-world case, you can use double matrices on the CPU for model-to-world-space and world-to-view-space transformations, and then combine them into a model-to-view-space matrix and convert it to floats for the GPU, so the GPU can transform vertices directly from model-space to view-space and never has to calculate with large floats (for objects close to the camera at least). Additionally, if you can't easily transform everything to view-space and would prefer doing some GPU calculation in world-space (e.g. some world-space light maps that are difficult to rotate), then instead of using the actual world-space where coordinates near the camera can be too large for floats, you can use a camera-centered-world-space that is centered around the camera but oriented according to world axes, sending a model-to-camera-centered-world-space matrix to the GPU.
    11. Hi everybody, Xilvan Design building 3D games since 2004 in Blitz3D, we are now presenting you our kindly official gaming related pages... Now, we have a .com & CNET.download.com are publishing our games. We use premium service, have unlimited bandwidth & infinite memory. - The Xilvan Design Website - (please click on each links, download games & bookmark the pages): Lights of Dreams IV: Far Above the Clouds v11.37. Candy World II: Another Golden Bones v16.17. Candy Racing Cup: The Lillians Rallies v4.47. Candy World Adventures IV: The Mirages of Starfield v9.07. Candy to the Rescue IV: The Scepter of Thunders v10.27. Candy's Space Adventures: The Messages from the Lillians v20.47. Candy's Space Mysteries II: New Mission on the earth-likes Planets v10.57. Heres my YouTube Channel ZeldaOOT, where we are showing Candy's & Lights of Dreams Series. Lately, I was working on newer video for my fans. - My Youtube Channel - Friendly, Xylvan, Xilvan Design.
    12. There is a few TypeScript files in our example. We want to place these scripts on Sandbox. This is the result on the Sandbox: click. Open the debug console in your browser to see the result: "Ctrl+Shift+J" in Chrome. You will see in the debug console this messages: Create these files on Sandbox: https://plnkr.co/edit/ Program.ts import { Rectangle } from "./Rectangle"; export class Program { public static Main(): void { // Create a rectangle let rectangle = new Rectangle(); // Draw the rectangle rectangle.Draw(); } } Program.Main(); Rectangle.ts export class Rectangle { public x: number; public y: number; public constructor(x: number = 0, y: number = 0) { /* ... */ console.log("Rectangle was created"); } public Draw(): void { /* ... */ console.log("Rectangle was drawn"); } } We need to compile these files to AMD. For this, create the "tsconfig.json" file on the Sandbox: tsconfig.json { "compilerOptions": { "module": "amd", "outDir": ".", "sourceMap": true }, "include": [ "*.ts" ], "exclude": [ "" ] } Create the RequereConfig.ts file on the Sandbox: RequireConfig.ts requirejs.config({ baseUrl: "." }); requirejs(["Program"], (Program) => { }); Add "require.min.js" in the "index.html" file: index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>A few TypeScript files on sandbox</title> <script data-main="RequireConfig" src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js"></script> </head> <body> <h3>See the console output. Press "Ctrl+Shiprt+J" in the Chrome browser.</h3> </body> </html> This is the result on the Sandbox: click. Open the debug console in your browser to see the result: "Ctrl+Shift+J" in Chrome. You will see in the debug console this messages: P.S. If you need to work locally you need to run these commands: npm init -y npm i -D @types/requirejs P.S.S. Read this book to learn more about AMD and RequireJS: Mastering TypeScript - 2nd Edition - Nathan Rozentals
    13. Hey man, first of all, congratulations for getting the motivation to go back to coding and trying to make a game on your own, especially at your age (not trying to say you're old or anything, that's just not that common and I respect this). Also please spare me for the upcoming mistakes, I'm from France, my english isn't the best, and I'm typing fast so I might forget words, considering I won't be reading my post after posting it ahaha. I'm gonna try to answer your questions with the little knowledge I have. 1) to give you an idea, this guy created a "simple" 3D Game engine in 3 years, and it actually rocks, even tho the graphics are not the best : https://www.haroldserrano.com/ , and here is a Quorra topic when he answered and detailed the process of making one https://www.quora.com/When-developing-my-video-game-should-I-use-a-game-engine-or-program-everything-with-C++ (the first answer is him). Now on a personal point of view, creating a game engine AS GOOD as UE4 / Crytek / anything else alone would take I think 5 or 6 years max, being REALLY dedicated to it. A game engine only is (hard) maths and coding, so if you have the required skills in both fields you could do it. 2) Yes it obviously is (to me at least, and this considering I have never done it, but heard people talking / writing about it). As of now, the amount of web devs vs soft devs in the world is about 70% / 30% respectively. Programming complex rendering systems and good looking graphics, as I said, is all about maths. It's maths, maths, and maths, whereas what you call "normal" programming is about using the right words and syntaxes in the right order (even though it requires maths as well in specific fields, but not much as if you would program a, let's say, functional rotating camera in a 3D environment). I don't think graphics programming is the hardest programming field, but it indeed does require a fantastic maths knowledge to create real next-gen and good looking/working stuff. 3) No. As @_Silence_ mentioned it, C++ won't become obsolete before a lonnnnnng time. C++ is the Graal of programming languages (putting Assembly apart) when you need (super duper good) memory / performance optimization. When you program in C++, every single memory section of your program (and thus of your computer) is under YOUR control. Again, same for maths, C++ requires a LOT of practice to use it at least average good. 4) I don't really get the point of your question, but, as far as I know, Unity smartphone games aren't generally slow. Now my PERSONAL thoughts, these will just be recommandations coming from my point of view as of NOW. If your plan is to create a game engine, having only 3 years of spare time, just forget about it. Considering you're not that good at maths (i don't know about it tho), you forgot about C++ and don't know about its latest updates and usages, and that you've never gotten into graphics programming (even from afar), it will take time, it will take a lot of time. I'm not saying you don't have the motivation to, but if your overall objective is to create a game you can sell so you can slowly get into the indie video game industry (or AAA game industry), start by using a game engine, but use one where you can sharpen and practice your programming skills (I would recommend starting slowly with Unity in C# since you know that well, and when you're ready to take a next step, go for UE4 with C++). After that, if you feel confident enough with your programming language, try to make games with REAL game engines (not a game maker like UE4/Unity). For C# you have XNA / MonoGame, for C++ you have SDL / SFML, etc. This will teach a lot about all the aspects of a video game, even tho these frameworks will spare you with the real low-level stuff. It will be a new step towards graphics programming. After all of this, if you still got time, now you can for some pure OpenGL / DirectX / other graphics API programming. This is what I WOULD do. This might sound full bullsh** to you, and I might ignore many details as of your current situation, but to me that is what you should do.
    14. I tested these examples about 10 years ago (so probably DX 11 on a card circa 2010 ish) to reduce floating point rounding errors in HLSL shader operations. They were just supposed to be an example of modified functions reducing the risk of rounding errors.
    15. @TeaTreeTimpow(a,b) actually is implemented as exp(log(a) * b) on modern architectures. There's no power intrinsic function (neither in x86. x87, amd64, SSE, SSE2, ..., nor on the GPUs)
    16. Then why use this example? If you can provide examples where this is a problem you will be more likely to get solutions. Can you elaborate on this? And what are the actual numerical values of the transform where you are getting drift? With quaternions could it be something like you are not normalizing them?
    17. Try and find the operations that accumulate errors and post them, there may be a better way to do them. For example: Instead of asin(x) try 2 * atan(x / (1 + sqrt(1 - x * x)) Instead of pow(a,b) try exp(log(a) * b) I would say the basic premise of expecting hundreds of operations to be reversed to return the same float might need a basic design rethink but you didn't really say what you're doing or why.
    18. Hi guys, what are options regarding replicating actors to only one one client in Unreal Engine 4. For example, let's say we have a dedicated server and two clients. One client has objective to kill some actor. That actor is spawned on server and should be only visible and interactable to the client with the objective. The first way that i know of, is to set bOnlyReleventToOwner flag to true and set actor's owner to PlayerController. Another way is to override IsNetRelevantFor method in replicated Actor and use some flag to tell for which client we want to replicate actor. Any other options?? I hope you can understand my question. Thanks in advanced.
    19. DividedByZero

      Creating a global thread

      Hi @All8Up, thanks for the reply. Visual studio isn't liking that much unfortunately.
    20. Thanks for the replies. I do not have large positions, but I have sometimes a chain of 20+ objects built on top of each other. Each object stores its local transformation matrix. If you want to modify the absolute orientation of the object at the end of the chain, e.g. rotate it absolutely by 1 degree around a specific axis, then you first compute 20X matrix multiplications to get the absolute matrix, then you rotate that matrix, and compute another 19X matrix multiplications, inverse it, and multiply it with the modified matrix, in order to obtain the new local matrix for that object. I am aware that above operation can be performed in a more simple way, but there are many such similar cases where a float just isn't enough anymore. Another example is to read and set the same absolute matrix of that object that is at the end of the chain: the object can very slowly drift. (just for precision: I am not really using matrices, but position vectors and quaternions. But the problem is similar)
    21. I'm not sure if this is really addressing your problem but I'll give you my experiences with double and float. I'm building worlds with a very large range of numbers. It requires doubles or alternatively some likely error prone system of coordinate translation. My current strategy is to calculate everything in double on the CPU side. Although I'm sure you can mix and match in places, I think for initial development keeping everything double will save you some heartache. Later you can go back an optimize things if you feel the need. The GPU is a whole different story since typically many cards aren't really optimized for double (apparently many intentionally). The trick is when going from CPU to GPU to translate everything so your camera is near (0.0,0.0,0.0) and as you do so simultaneously convert to float. Since things in the distance need far less precision this works fairly well. For instance if a far away hill that is 100 meters height is now 99.5 meters high due to precision loss, a player will never notice it. As you approach the hill you will have to send it's vertexes down again anyway to get the required detail with you terrain and and that point the precision will fix itself since the data will be progressively closer to the camera. This does however add one more requirement to your system....... You need a very robust LOD (Level of Detail) system. Detailed objects at distance are going to be a problem be they will induce Z-fighting since the precision simply isn't there. How you handle this has a lot to do with your basic graphics system. But generally you are not displaying small objects at distance anyway, so hopefully a lot of his should take care of itself. Again I'm not sure if this really answers you question, but maybe you can glean something from it.
    22. Brain

      Firework Factory 3D version

      Mr Boom's Firework Factory rewrite in Unreal Engine 4. Previously attempted rewrite from scratch using DirectX 11. Due for release July 2019.
    23. Multiplying pretty many rotational matrices over each other doesn't introduce too much error. The error can pop up with positions, if they're really big. Do you have really big positions or scales in your matrices? What for?
    24. 1) Very, very, very long. Many developers are developing UE4 for example. If you stuck with only the graphics part (graphics engine), it will take you very, very long time. I believe that the main problem is not the time. Very experienced programmers like Carmack can code a new engine. The main things are to accumulate all the necessary knowledge. High-end effects, which make the most appealing graphism need a lot of knowledge. And this is time consuming plus require special skills not everybody can eat quickly. For creating a 3D room with a character moving, every one can do that. But if you want to be in the engine side, this won't make your porfolio at all. 2) I don't know. I remember talking with some people and they told me that the most complex thing in programming is about crypto, and second 3D. But not everybody see it like this. It all depends on people skills and what they like to do, to my opinion. 3) C++ is not obsolete and will not be obsoleted in the next decades. System languages are required: OSes are implemented in C/C++. Time-critical programs are programmed in C/C++. Most AAA games (and engines) have their core programmed in C++. Most big applications use C++ even if big companies tend to move to their own languages (C# for MS, Objective C++ for Apple). 4) I don't know. If you want to make games, most people here will advise to use Unity and C#. Mainly, from what you said, you're a bit afraid, you are wondering, you are not reluctant to move to other languages. So I believe this is what you should go for. With starting with Unity and C#, you'll be able to make something far more quickly than if you was choosing another engine and C++. Maybe with UE4 and blueprints you can achieve the same speed but I don't know how far and how complex it will be to rich the same achievement. Hope that helps. PS: In Québec you have the choice. It might be quite easy for you to find a junior job in the 3D area.
    25. Not only due to memory, but mainly for computation. Unless you have very specific uses and constraints, use float to store your vertices, normals and other attributes.
    26. Hello, I have my 3D application use floats for almost everything. Now I realize that I lack precision (typically for transformation matrices, that are cumulative with a hierarchial arrangement of objects). So I want to switch to double for matrix/vector calculation and most other things. My question is: what should I do with my vertices and normal vectors? From a storage point of view, going from float to double will almost double my file sizes, which is not really problematic. But passing doubles to a graphic card is another story I think, since twice that many data need to be passed, which very probably represents a bottleneck. I am using pure old openGl, but want to switch to vtk or something similar. What are people normally doing in this situation? Thanks for any insight
    27. All8Up

      Creating a global thread

      Assuming I interpreted the question correctly, i.e. call the function in the new thread. Basically std::thread only supports construction time initialization and move semantics, no command operator (as you are attempting) nor copy semantics are allowed. So, in order to do what I believe you want, something along the following lines should work: std::thread t1; int main() { t1 = std::move([](){ functionToThread() }); t1.join(); return 0; } Basically this means make a new thread instance with valid initialization data and move the result into the global t1. Also, std::thread expects a std::function, so I threw a lambda around the call just to guarantee it will be in the correct form. Hope this helps.
    28. ALT PLUS VIETNAM

      3D ASSET BUNDLE - VIASS SIMPLE CHARACTER PACK

      ❣️❣️HEY GUYS, WE ARE VIASS - VIETNAM ASSET DESIGN ❣️❣️ Today, we introduce to you, the best 3D asset ever for your game - VIASS SIMPLE CHARACTER PACK This is a low poly asset bundle containing characters, animals and equipments. With this package, game developers can create every kind of game with polygonal style based on their imagination. Character: White Boss, zombie, knight. Animal: Dragon, horse. Equipment: Arrow, axe, bow,etc. Characters and animals have replacement color and texture. List of animations for the characters and the Dragon: idle, walk, die, attack, get hit. ---------------------------------------------------- To get a better look at our 3D product, click the link below: Unity Asset Store - Click here Follow us to stay updated: https://www.facebook.com/ViassDesign https://viass.altplus.vn/ Thank you!
    29. TERA Online, or the exil Kingdom known as Arboreais, is a 3D illusion theme developed by Bluehole Studio called MMORPG. TERA has most of the standard MMORPG functions, such because pve, raid, questing, looking, handmade, housing, PVP activity and Tera gold growing.If you have any concerns concerning exactly where and how to use Buy TERA PS4 Gold , you can get in touch with us at our site. Gamers can make seven races and eight playable classes, each using its own special culture and history. Since far as the storyline is concerned, all contests interact to provide a new balance of power inside a world inundated by threatened dark forces. With regard to combat or combat techniques, Tera Gold plays an important role in the sport because of its special style of action combat systems to make combat even more active. Without Tera rare metal, Tera players will endure in the game. Since for gameplay, players may have to juggle switches blindly and hone tedious content. If you have any sort of inquiries pertaining to where and how you can make use of Buy TERA US Gold , you could call us at our own webpage.Players can be competitive for positions, aim from moving targets, avoid episodes, and time combinations in order to cause great damage. Inside order to enhance your current spirit of adventure plus praise your game play.
    30. ALT PLUS VIETNAM

      2D ASSET BUNDLE - VIASS PUZZLE MOMOTARO

      ❣️❣️HEY GUYS, WE ARE VIASS - VIETNAM ASSET DESIGN ❣️❣️ Allow me to introduce to you guys, our 2D asset for your game - VIASS PUZZLE MOMOTARO VIASS Puzzle Momotaro is an adjustable mobile-friendly user interface package for game. Contains various features to create a complete game with the best interface design. ✨✨From characters, animals, monsters to puzzles, maps, backgrounds... any kind of game, any kind of item you need, we got it all, just for you!✨✨ 💥💥So what are you waiting for? Are you excited to get this fullest asset package??? 💥💥 ------------------------------------------------------------------------------------ ---------------------------------------------------- To get this amazing package, click the link below: Unity Asset Store - Click here Follow us to stay updated: https://www.facebook.com/ViassDesign https://viass.altplus.vn/ Thank you!
    31. Thanks, I'm glad you liked it! You can connect with me on LinkedIn if you'd like I want to connect with more Games Industry people.
    32. Hi Guys, How would I go about creating a global thread so I can fire it off in another function? I have tried this but it won't compile. std::thread t1; int main() { t1(functionToThread()); t1.join(); return 0; } Any advice on how to do this would be awesome. Thanks in advance.
    33. mysteriousmonkey29

      Multiplayer networking for modded open source game?

      Yeah I know it won't be easy, but it at least sounds doable now. Thanks for you help! And that's really interesting! I love all the "yes sir, right away, etc..." in different languages in age of empires (my childhood RTS game). Never knew it served a networking purpose!
    34. Jay Milestone

      Jay's Trump Jump

      How many walls can you make Trump Jump
    35. Social impact ideas can be tested through games. For example, you could make a game about a community, but without the real human community. Not Second Life or Club Penguin. Say, like the village in Animal Crossing. Just encourage Helpful Honda Guy behavior among the players (don't reward unproductive behaviors), where they're helping NPCs. Theory to be tested by means of the game: do generosity and kindness in a game translate to generosity and kindness in the real world? Or perhaps the question should be: what techniques of encouraging generosity and kindness in a game have a higher likelihood of promoting the same behaviors outside the game? We can't look at studies about violence in games for help with the question. A recent study says there's no connection between violent video games and real world violence, but other studies have said otherwise. Yes, there's a question as to the funding sources and the methodologies, but the issue is tainted so can't be used as a yardstick for the kindness question. Making such a game doesn't guarantee that it'll spread. It needs lures to bring players in, and hooks to keep them in and it needs virability (new word?). Start thinking about the marketing side of it while you conceptualize the game. And plan for retention design as well. And yes, as mentioned above, impact measurement is also important. Which means collecting lots of data and turning it into statistics. How could this Good Deeds game grab interest, catch on, and start having real impact as a brand new IP? Perhaps is there a popular IP that could be attached to it (one that wouldn't go sour or fall out of popularity)? Creating an IP is easy; catching the perfect wave is hard. Back to my first paragraph, about an Animal Crossing village, single player. Of course you thought differently when I said "without the real human community." But let's put people into our village. Are all the avatars controlled by humans? Let's say for a moment that they are, that there are no NPCs needing your kindness. Gaming the system, circumventing the system, going on rampages are all possible if the digital village is populated by human-controlled avatars. Or maybe some of them are NPCs? Part of the game (emergent gameplay) might be to figure out before starting a conversation which are human-controlled and which are AI. There's always the direct approach: "Hi, are you a human?" "Yeah. Wanna help me across the street? Then you gotta let me give you a thermos of soup from my inventory." If the game is populated by both human-controlled avatars and AI NPCs, both would need to be integral to the overall play mechanic. Well. Followed that thought down to the bottom... Who's next?
    36. jbadams

      Alternative names for fantasy classes

      Agreed with the above. If your classes aren't mechanically creative, I'd strongly consider sticking to standard names that many players will already understand. That being said, you could perhaps look at names from different cultures. Taking a priest for example, you might substitute a shaman, kirkman, padre, oracle, etc. Of course, keep in mind that some of these may also have certain pre-established meanings to players.
    37. Lendrigan Games

      Alternative names for fantasy classes

      Unless the classes you've drawn up are mechanically drastically different from "standard classes," you need some other practical reason for new labels, lest you confuse the players unnecessarily.
    38. DevJarmo

      Learning Netcode

      Just to update this thread, I am still making great progress and plan to have a release by April.
    39. I will send you an e-mail.
    40. SecretLairGames

      Need Advice Important (advanced questions)

      1) Game engines I've seen are million+ line beasts. I made one myself, parts of it go back 30 years, it is 325,000 lines + libraries + chrome and I've been working full time for almost 10 years. That said, there are lots of places to start. There are free game engines, or parts of engines you can adopt. Unity is pretty awesome. 2) 3D programming is no harder than other programming, the tools however are generally worse and you have to be able to figure out the math. 3) Still using C++ because for games generally you need your code as fast as possible. I've seen a lot of languages come and go over my career - they all do the same thing so pick one you like. 4) Smartphone is a tough platform for 3D, but you can do it with Unity if you like.
    41. STORY : I'm 40 years old, thinking about going back into programming after 20 years... I already did some C++ but I don't know the new stuffs C++14,17,20 etc.. I always wanted to learn 3d graphics and it's my passion compared other kind of programming who seem boring to me..but I'm a bit afraid to go study full time C++ and DirectX or OpenGL to become a 3d graphics programmer after I have read the horror story in the game industry, it doesn't seem like a solid career choice and the pay seem low for the difficulty ratio.  I was wondering if C# with Unity wouldn't be a better choice ? try to make a small game of my own and try to sell it and if it doesn't work, I still have my C# for normal programming job like WebDev etc. The things is I can study 10-15hrs a day for like 3 years, but it take a long time to learn C++ and DirectX when its native + the math etc... So what you guys recommend, because I'm starting to see some beautiful looking game made with Unity on Youtube, could be lot easier to create something managed etc and cross-platform too. I know how studio and AAA games are made I have no Illusion I know you can't make Call of Duty or the next Final Fantasy alone so you have to make a smaller game. Here is a few questions that I have, if you can help me out, it would be greatly appreciated, sorry for my english I'm french from Quebec : 1) How hard and how long does it take to develop 1 of the best 3d engine like CryEngine, Unreal, Frostbite etc and how much % of it, 1 person alone can do on his own these days ? Would it be possible for Carmack to code one today and compete or these days it's impossible alone ? or a beginner to create a 3d room with a character moving around like a shooter to show as a portfolio (in native) ? 2) Do you consider 3d graphics programming in C++ with Opengl, Directx etc to be harder than more "normal" programming like Webdev with JS or C#, Java etc ? Do you think it require more programming skill because its native, or it's not true anymore since there is complexity in others programming fields ? 3) Do you feel that C++ today is becoming slowly bloated or trying to be too much compared others more modern language like C#, Javascript etc ? Would you go as far as saying C++ is obsolete today or more of a niche language for games and advanced system programming (Photoshop, Word, Windows etc) ? 4) Do you guys know how large is the gap between Crysis and Unreal engine compared to Unity with C# in term of performance for making good 3d indie games today ? Let's say we make a good 3d game with Unity and C# will it be slow on Smartphone ?
    42. STORY : I'm 40 years old, thinking about going back into programming after 20 years... I already did some C++ but I don't know the new stuffs C++14,17,20 etc.. I always wanted to learn 3d graphics and it's my passion compared other kind of programming who seem boring to me..but I'm a bit afraid to go study full time C++ and DirectX or OpenGL to become a 3d graphics programmer after I have read the horror story in the game industry, it doesn't seem like a solid career choice and the pay seem low for the difficulty ratio. I was wondering if C# with Unity wouldn't be a better choice ? try to make a small game of my own and try to sell it and if it doesn't work, I still have my C# for normal programming job like WebDev etc. The things is I can study 10-15hrs a day for like 3 years, but it take a long time to learn C++ and DirectX when its native + the math etc... So what you guys recommend, because I'm starting to see some beautiful looking game made with Unity on Youtube, could be lot easier to create something managed etc and cross-platform too. I know how studio and AAA games are made I have no Illusion I know you can't make Call of Duty or the next Final Fantasy alone so you have to make a smaller game. Here is a few questions that I have, if you can help me out, it would be greatly appreciated, sorry for my english I'm french from Quebec : 1) How hard and how long does it take to develop 1 of the best 3d engine like CryEngine, Unreal, Frostbite etc and how much % of it, 1 person alone can do on his own these days ? Would it be possible for Carmack to code one today and compete or these days it's impossible alone ? or a beginner to create a 3d room with a character moving around like a shooter to show as a portfolio (in native) ? 2) Do you consider 3d graphics programming in C++ with Opengl, Directx etc to be harder than more "normal" programming like Webdev with JS or C#, Java etc ? Do you think it require more programming skill because its native, or it's not true anymore since there is complexity in others programming fields ? 3) Do you feel that C++ today is becoming slowly bloated or trying to be too much compared others more modern language like C#, Javascript etc ? Would you go as far as saying C++ is obsolete today or more of a niche language for games and advanced system programming (Photoshop, Word, Windows etc) ? 4) Do you guys know how large is the gap between Crysis and Unreal engine compared to Unity with C# in term of performance for making good 3d indie games today ? Let's say we make a good 3d game with Unity and C# will it be slow on Smartphone ?
    43. Wow thank you so much for your very detailed answer! You really cleared things up, I've never noticed that D3D12's barrier model actually has different semantics than Vulkan's model. I just thought that D3D12 was less expressive in that regard. Couldn't have hoped for a better explanation!
    44. Yesterday
    45. taoprox

      HTML5 Canvas Online RPG (MORPG)

      Uploaded a new video showing my npc system. Check it out, Thanks, Tao
    46. One diry secret with AAA games is that the GPU vendors with hand tweak special versions of their drivers with specifically for each game, to do the minimum amount of work instead of a general purpose solution. The GPU vendors will even re-write the shaders from a AAA game to make perfect use of each of their GPUs... So, one reason that D12/VK often doesn't get ahead is because the slimmer D12/VK drivers leave less room for this kind of per-game magic/cheating from the driver-authors compared to the fatter D11/GL drivers, and instead puts all this responsibility on the engine team. Also, it could be that the GPU vendors are doing per-game D3D11 drivers, but not bothering with per-game D3D12 drivers yet. This would then be an unfair benchmark -- testing a custom D3D11 driver vs a standard D3D12 driver. Another reason is that, again, because these APIs are closer to the metal, it's more and more important to write everything three times to take advantage of the way that three different brands of GPUs actually function. If you write a single generic solution that works everywhere, it's going to be slower than a solution that's optimised for one particular GPU architecture. e.g. in my game I only have a single D3D12 code path (instead of three) and my D3D12 vs 11 performance on NVidia is +/-2% (pretty much the same), but on AMD I get a clear 15% improvement. That's largely because I've written my D3D12 code with GCN in mind instead of thinking about Maxwell, etc And lastly, yeah, if the game's rendering systems have been written assuming a D3D11/GL style resource binding model and fine grained pipeline, then it can be painful or futile to port that code to D12/VK. The reverse isn't true though- making game rendering code that's written against a D12 style API run well in a D3D11 back end is easy 😃 I got lucky here and begged to be part of he Mantle beta, and used that special to redesign our cross platform rendering API early to fit the new style. D12 and VK are very similar. I persinaly prefer D12 as I think it's a bit cleaner / simpler and easier to write fast code in. D12 didn't originally have render passes, but they've recently been added as an opt-in feature if you want them. D12 forces you to do residency management yourself (monitor available GPU memory and move resources on/off the GPU if your memory usage wouldn't fit). VK has no such tools, so will perform worse if you're close to using the maximum memory of your GPU (but also makes your life easier by not giving you that responsibility). D12 abstracts physical devices, queues and memory locations at a higher level that makes it easier to write cross-vendor or multi-GPU code. VK is lower level here, requiring more work from the application to set up their queues and memory allocators. Those last two points kind of show that they're both lower level than each other in different ways 😮 D12 and VK have two different barrier styles that are both better at different situations. D12 focusus in the resources themselves, while VK focuses on the pipeline. The D12 barriers can by asynchronous (split barriers) which allows them to be free a lot of the time. For example, if pass A produces a texture for use in pass C, then after pass A you start a barrier, then to pass B, then finish the barrier, then do pass C. On some hardware, the actual work behind the barrier will happen in the background during pass B, and have no cost! In VK, you'd either have to out the barrier after A or before C, and it would actually have a cost / stall some GPU work. Alternatively, VKs render passes may be able to perform this optimisation automatically for you, but that's a similar"high level" situation to GL/D11... On the other hand, VK's pipeline focussed barriers let you do some nice fine grained tricks. If pass A's pixel shaders produce a texture that's consumed by pass B's pixel shaders, you can insert a barrier between them that guarantees no overlap of pixel shading, but still allows pass B's vertex shaders to begin early during pass A. From what I can gather, the resource-focused method of D12 maps better to AMD hardware, while the pipeline-focused method of VK maps better to NVidia hardware.
    47. sanjaysalem17

      Looking for talented 2D/digital artist.

      Hey Jarmo, I saw your post and I wanted to respond and say that I am interested in making 2D assets for you. If you think my art style/work is good enough, please feel free to contact me at sanjaysalem17@gmail.com. Thanks for this opportunity! If my work is used in your game, I only ask that I can put a link to the project on my website to show people that I contributed in some way. Portfolio: https://sanjaysalem17.wixsite.com/artportfolio Github: https://github.com/sanjaysalem17
    48. As stated, I'm looking for potential opportunities to just learn &/or recieve income, as well as make some game dev friends! I am an eager to learn amateur, my only experience is in modding Nintendo games (Zelda Wind Waker, or ALTTP) using primarily Autodesk 3DS Max. I doubt I could create high detail models or textures, I much prefer simplistic characters with solid color, often cel shading. I believe I am decent at optimizing models and textures, I am not very familiar with code but I'm not dumb (In the event file formats need to be converted, etc). I can attempt to create low detail sprites and adhere to specific palettes. (24x40 pixels maximum) I have not yet put together a portfolio, and intend to in future. If you would like for me to try and work with you, you can contact me at twitter.com/InTheBeef or InTheBeef#1252 (discord). note if you view my media on twitter you can see a few things I've made/modified.
    49. Hey guys, I'd like to ask the more experienced people here what you think (or maybe you know for sure) the problem is with the performance of the implementations of D3D12 in most AAA-titles. The D3D12 render path is almost consistently worse than the D3D11 render path. I'd assume it's because they haven't had time to rewrite their engines for proper use of the newer APIs? And I know it's not good practice to ask more than one big question, but how do Vulkan and D3D12 compare in practical situations? They seem to be very similar, but do have some key differences. Notably, render passes and finer pipeline barrier control in Vulkan. So I'd assume Vulkan offers better control and thus performance?
    50. Uttam Kushwah

      undefined behavior of bullet objects.

      Ok i got a work to do , I will try everything that you all suggest here untill i get over this. Thanks again.
    51. Hello all. For anyone who needs them I am offering my game art/character design and writing consultation services. I can do character expression sheets, concept arts, background art, and more. As a writer I have written screenplays, a book, currently working on another book and a writing a graphic novel. Here is a link to my site: https://misanakuya.wixsite.com/mysite Private message me if you need anything. For writing examples just private message as well me and I will send some to you.
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!