1. Past hour
2. Bumpy World

Wow! That's definitely something I'll be looking in to!

4. Freelancing as a software developer to fund game development

Computer science is a bit of a misleading term. 'Science' in english can both be used to describe the application of the scientific method (obviously in biology, chemistry, physics, medicine, especially the 'hard sciences'), and also used more broadly to refer to 'knowledge'. It is in the latter sense science is tacked onto areas such as computer science, political science, cognitive science, religious science(!!), social science. In this sense you could refer to e.g. cooking as science, or bricklaying, or anything for that matter. The first sense is usually the more common interpretation of science, and in order to practice science e.g. here in the UK (i.e. research with scientific method) usually entails further study, usually to PhD level (~7 years). A degree (BSc) or masters (MSc) are typically taught courses, like school, whereas PhD is research course. In the same way I believe a medical doctor can complete taught course to practice medicine (MD) but also complete research course to do medical research with scientific method (PhD or equivalent). Usually when people refer to 'scientists' (in the news for example) they are referring to practitioners of the scientific method. Presumably the term 'computer science' was used because it sounded more official than e.g. 'computing', but it is to some extent trading off the reputation of the scientific method, much like the term 'engineer' has been mis-appropriated. There is little to no application of the scientific method in computer science, in my experience.
5. Today
6. Bumpy World

No, voxelization has been used in early research about automated polycubes generation, but it inherits the problems coming from a fixed world space grid, which rarely fits the surface well. (Tried it but failed badly.) For quadrangulation there are many approaches. The most popular is to generate a crossfield on the surface which is aligned to curvature directions. From this field singularities can be extracted (on the bunny you can see some vertices with valence 3 or 5). Then you can trace lines going outwards those 3 or 5 directions to form a motorcycle graph which is guaranteed to consist only of quads with T-junctions. For those T-quads we can form a graph to connect oppositing edges over neighbouring quads, and in this graph we can greedy seek for edge loops in a dijkstra like manner to tesselate the edges (so solving the NP hard rounding problem.) This whole process becomes a lot easier if we first solve for a initial UV paramtrization which already respects the angle constraints coming from singularities (3 or 5 times 90 degrees). Then the general shape of the resulting parametrization is already given, tracing can be done in 2D and we try to round tesselation so singularities keep their distance as good as possible. (https://www.graphics.rwth-aachen.de/media/papers/campen_sa2015_qgp_medium.pdf) Other approaches work with some spectral function over the surface and avoid the need for crossfields and parametrization. There has been heavy research in the past decade and it is still going on. Yeah, don't torture yourself trying to achieve this with quadrangulation. (I regret my decision to go there myself - but i really get better quality and performance form my GI stuff, and i'm almost done, sigh... ) As you mention this, i think vector fields have a great potential to improve this beyond the boring patterns we get there. See this for example: https://www.cs.cmu.edu/~kmcrane/Projects/StripePatterns/ Simple vector, line and cross fields can be computed quickly by diffusing curvature directions without trig. Driving noise generation with this might result in more interesting stuff at low cost. This could be really useful for you.
7. how is character creation usually done?

I think you are talking about Character Creators. Like in an MMO. That is quite complicated, I don't know a lot about the subject, but i know you need to know modelling, create your base concept a baseline that CANNOT be modified.Then delineate the parameters and the specific areas that you are gonna allow the player to modify, for example the player is allowed to make the eyes smaller or bigger, but only to a certain point. The player is allowed to change their character height, all those things, its quite a lot to get into. If you are talking about characters in general, you just need to be creative, come up with your own, diverse concepts and bring them to life. Again, you need to know modelling or at least drawing to do this.
8. Bumpy World

I'm not so paranoid. ☺️ It's always interesting to see what others are doing. I'm actually still not sure how the mesh is being generated. Is it some sort of projection from a subdivided cubes? That's true. However the strength of marching cubs is from a function or a very simple data description, you can create your mesh geometry quickly and it's easy to modify too. On this other hand the irregular mesh is why I decided to "wrap" my voxels around the planet. It just kind of makes everything more even. At one point I came up with an idea of starting out with a height map style mesh and then splitting and stretching new triangles. The problem is is wasn't clear to me how to quickly make them conform to a function once you get past a height map function. I'm actually going to see how far I can go with procedural textures which are seamless by nature. I tried raw simplex noise on my first non-voxelated world and it worked OK but it had anti-aliasing problems. I kind of fixed it with a distance function that fades the pattern out but I really haven't done much with this yet. Here is something in DX9 from a few years back before I put the anti-aliasing code in. You can see the problem. But at least the terrain was good and you could walk on it since I had sphere to mesh collision working. I've been thinking about raytracing myself. I think I could probably do something with my current code because everything gets generated into an octree. So finding intersections are fast. I used a quad-tree in my first height-mapped world above and it was good enough to do JIT terrain and collision. I think the occtree is better for this though, because I ended up having to use cylinders for my bounding shapes because of steep terrain where triangles would be large. If I tried to use spheres, they would become so big that too many cells were being checked and it bogged somewhat. For the octree it isn't a problem though since size is limited by the voxel. I kind of look at this as one of the main advantages of the voxel approach. Even if the mesh isn't as uniform, you do get your geometry divided up into nice neat cells which makes collision easy to calculate.
9. 3d Physics Engine for DirectX 11 C++ Application

Probably that's the case with almost any physics engine, but they all have forums if you experience a problem. I have experience with ODE, Havok, Bullet and Newton, in that order. Havok was quite good and had quite interesting features to mix character animation and simulation. (I do not think it's free anymore?) Bullet was a disappointment - neither fast nor accurate. Lots of jitter, even with just a stack of two boxes. Joint with elliptical cone limit was broken and no motor support. Newton was a total surprise. Unbelievable the work of a single man was so superior to anything else. Very accurate and robust, even with large mass ratios. Custom motorized joints can be made easily. And those joints were good enough to simulate a walking ragdoll at 120 Hz. No need to make a custom torque solver for this purpose which would be necessary for any other engine. Performance is comparable to the 'big' engines. No support for soft bodies or cloth yet. I have never used PhysX. What i hear from others (and see in games), accuracy is probably below Havok but better than Bullet and performance is good. Most interesting if you want GPU stuff like fluid, soft bodies and cloth, but with a limitation to NV GPUs that's either an optional detail option or no option. Keep in mind my experience with other engines dates back a whole decade and i prioritize accuracy, because i'm interested more in active stuff like robotics than in passive stacks of some crates in the background. Anything you hear is subjective. Performance is different to compare because you have to match quality first. There is a tool for comparision, 'PEEL', made by an Nvidia employee. Physics engines are independent of graphics APIs, usually cross platform and C++. (Rare exceptions, like some written in C#) As you did not list any specific requirements, that should not be a bad choice. It depends on what you want to do.
10. Potential Amateur Programmer

If you have the passion, and energy, and are willing to put in the effort to learn and grow, then get in touch. We are actively looking to hire seasoned producers to our team, but we also train passionate beginners that show potential to grow our own pool of talents. You can find more about what it means to be a producer in our team here: http://wartothecore.com/vacancies/vacancy-intern-producer-program-manager/. If you are interested, then get in touch.
11. [PR manager, [Lead Artist, 3D Artists, Writers ,XML scripters] Wanted for Released SciFi RTS Command & Conquer 3 Modification

This is looking good, great work there.

33. Reallusion Launches Character Creator 3 - Universal 3D Character Creation Platform for Unity, Unreal

Reallusion’s CC3 completes the 3D game character pipeline for game developers. Access a highly optimized game character base for mobile, AR and VR developers then integrate InstaLOD’s model and material optimization technologies to generate game-ready characters that are animatable on-the-fly with multiple LOD outputs. CC3 is introducing a new Game Character Base with its topology optimized for Mobile, Game, AR/VR developers. The 10K polygon base also answers the call for displaying massive amount of NPCs or Citizens with true-to-life body and facial animation without serious performance drop in real-time render. Optimized Character for Game/AR/VR/Mobile ● Game Base Characters can be derived from any Standard CC Character. ● Retain visual quality after mesh simplification. ● Compatible with CC Morphs, Skin Presets, and Outfit System. Simplified Bone Structure for Facial and Body Animation ● CC bones optimized identically for game engine compatibility. ● Fully-rigged 10K polygon characters with detailed facial and body performance. ● Compatible with iClone character animation tools and mocap system. ● Access to full set of Facial Morphs for lip sync and emotional expression. InstaLOD inside Character Creator 3 fulfills the complete game character pipeline on polygon reduction, material merge, texture baking, remeshing and LOD generation. These necessary elements of game design are able to be completed for every character in one seamless process. After designing with character morphs, clothing, accessories and materials the InstaLOD embedded features finalize the gamification for each character and produce up to 5 levels of detail to load into Unity or Unreal game engines. Pricing and Availability: Character Creator 3 Pipeline is available directly from Reallusion or authorized Resellers. It is available for Windows operating systems only. For more information about price and system requirements, please visit https://www.reallusion.com/store/ View full story
34. Reallusion Launches Character Creator 3 - Universal 3D Character Creation Platform for Unity, Unreal

Reallusion’s CC3 completes the 3D game character pipeline for game developers. Access a highly optimized game character base for mobile, AR and VR developers then integrate InstaLOD’s model and material optimization technologies to generate game-ready characters that are animatable on-the-fly with multiple LOD outputs. CC3 is introducing a new Game Character Base with its topology optimized for Mobile, Game, AR/VR developers. The 10K polygon base also answers the call for displaying massive amount of NPCs or Citizens with true-to-life body and facial animation without serious performance drop in real-time render. Optimized Character for Game/AR/VR/Mobile ● Game Base Characters can be derived from any Standard CC Character. ● Retain visual quality after mesh simplification. ● Compatible with CC Morphs, Skin Presets, and Outfit System. Simplified Bone Structure for Facial and Body Animation ● CC bones optimized identically for game engine compatibility. ● Fully-rigged 10K polygon characters with detailed facial and body performance. ● Compatible with iClone character animation tools and mocap system. ● Access to full set of Facial Morphs for lip sync and emotional expression. InstaLOD inside Character Creator 3 fulfills the complete game character pipeline on polygon reduction, material merge, texture baking, remeshing and LOD generation. These necessary elements of game design are able to be completed for every character in one seamless process. After designing with character morphs, clothing, accessories and materials the InstaLOD embedded features finalize the gamification for each character and produce up to 5 levels of detail to load into Unity or Unreal game engines. Pricing and Availability: Character Creator 3 Pipeline is available directly from Reallusion or authorized Resellers. It is available for Windows operating systems only. For more information about price and system requirements, please visit https://www.reallusion.com/store/
35. Bumpy World

Not sure what this is really. I mean it kind of sounds like one of the normal voxels algorithms. Marching cubes, surface nets, dual contouring. etc. I'm really specifically targeting games however, so everything has to working in real time as far as I'm concerned.
36. DirectX 11 Device context queston.

Hmm, where did you read that? I have been using deferred contexts quite happily for the last year or so. My main development machine has a Radeon RX 580.
37. How to use a specific adapter for fullscreen applications?

Actually, the list of outputs is empty for all adapters except the first one (whichever that is).
38. Basic OpenAL sound manager for your project

Same as Jack, cannot find the source code
39. DirectX 11 Device context queston.

I'm not sure I understood everything but I did managed to get it working with mutexes. I guess I'll stick with that for now and revisit deferred contexts later.
40. Game Designer Course in Germany

Greetings everyone! I want to know that: where is the best place to study game design in Germany? I looking for a German city with the best quality degree in game design, great amount of professional and also game company? Where I can looking for?
41. Decent online resources for maths refreshers

Admittedly my algebra skills are pretty darn poor. Never were particularly great either but I do remember really enjoying solving quadratics at school (a long long time ago). Does anyone know of any decent free online resources to "skill up" a little? Nothing serious, it doesn't need to be an online course as such, no qualifications required (managed to do alright without anything but basic maths skills most of my life) but it would be nice to improve a little at least.
42. Continuous GJK for Linear Translations

You will reach you goal the fastest by first implementing the linear CA algorithm, testing it, and getting it all ready to go. Then you can add in additional features with a solid baseline. This is personally how I would go about implementing this stuff.
43. Tales of Vastor - Progress #11

Tales of Vastor - Progress #11 Content What's done? What's next? What's done? Mage animations In order to finally finish the playable characters, I worked on the animations of the mage character. Here is one of my favourites: This is the animation of the ice block spell. It creates a massive ice block covering the enemy. Eventually, the enemy freezes and prevents him from attacking. New backgrounds This week two new backgrounds were created. I tried to apply my newly gained knowledge in speed painting. There's still a lot to learn though. The challenge was to use real life images and make them fit the game. Tales of Vastor usually covers self drawn resources, so I had to apply some self drawn images on top of real life images. Bandit boss refactoring I was quite unhappy with the anatomy of the bandit boss. Especially, his breast looked weird. Therefore, I modified the breast a bit and added veins, to show his muscular body even more. Sacred forest map Last week I drew the sacred forest map on paper. This week, I created the digital version and tried to apply icons used in the actual world map. This is a cropped version, so there will be more waypoints. The plan is to make a labyrinth with a difficult path. You may want to stock up your potions before entering the sacred forest. What's next? New animations for the paladin New backgrounds Story implementation Updated alpha version (31st of October) If you have feedback, you can contact me via mail or direct message whenever you want. Be sure to take a look at Twitter as well, as there are more updates. Thank you!
44. Requesting a code review

I always find it bewildering when someone says "you should do this, this way, because it is better" and I reply with "It depends on the situation" suddenly it becomes a religious debate that is veering off-topic. Surely the prudent answer -- especially to someone who is barely learning how to develop games -- is that they should not be afraid to try different methods and see what the pros and cons are of each? If you don't agree with that then we should leave it at that, you gave your opinion and I gave mine. As a side note I'm not really sure what you mean about Unity, it stores the delta time from the last frame and also has a fixed update function, like most engines I've seen have. There isn't anything forcing you to use a fixed timestep. There are many fully functional games out there that use a variable timestep, games have even created replays with variables timesteps. They had reasons, it wasn't just that they were bad programmers.
45. Continuous GJK for Linear Translations

Well, I was also planning to venture into scaling objects as well; I figured with a ray-trace I could manipulate the velocity vector by the movement of the simplex's faces after scaling was applied. But seeing as the ray trace is more complicated than I thought and I have to do CA regardless, why not shoot for the stars at this point?
46. Continuous GJK for Linear Translations

CA without rotations is very very easy. If you are looking for the simplest algorithm and only need linear movement this is the way to go. You can take Erin's code from above and just swap out the root finder which is trivial without rotations.
47. Being Hired as Co-Writer for an Indie Studio - Question about Fixed + Revenue Share

I see. Thank you for the info. I will estimate the cost after checking with a few knowledgable people near me. Thank you, everyone, in this thread for the feedback.
48. FBX SDK skinned animation

You can do something like this: 1) Go over each cluster and collect vertex influences (bone index and weight) 2) Go over each array of influences (per vertex) and sort, resize, and normalize 3) Copy influences into your vertex structure struct VertexInfluence { int BoneIndex = 0; float BoneWeight = 0.0f; } // Sort influence by bone weight bool operator<( VertexInfluence Lhs, VertexInfluence Rhs ) { return Lhs.BoneWeight < Rhs.BoneWeight; } // Normalize bone weights such that they sum up to 1 void Normalize( std::vector< VertexInfluence >& Influences ) { float TotalWeight = 0.0f; for ( const VertexInfluence& Influence : Influences ) { TotalWeight += Influence.BoneWeight; } // This can happen if a vertex is not skinned if ( TotalWeight == 0.0f ) return; for ( const VertexInfluence& Influence : Influences ) { Influence.BoneWeight /= TotalWeight; } } // Collect vertex influences from clusters std::vector< std::vector< VertexInfluences > > VertexInfluences; VertexInfluences.resize( VertexCount ); for ( const Cluster* : mClusters ) { int BoneIndex = mBones.IndexOf( Cluster->Bone ); for ( int i = 0; i < Cluster->VertexCount; ++i ) { int VertexIndex = Cluster->VertexIndices[ i ]; float VertexWeight = Cluster->VertexWeights[ i ]; VertexInfluences[ VertexIndex ].push_back( { BoneIndex, VertexWeight } ); } } // Process influences for ( int i = 0; i < VertexCount; ++i ) { // For each vertex get the array of influences std::vector< VertexInfluence >& Influences = VertexInfluences[ i ]; // Sort influences by weight (largest weights first) std::sort( Influences.begin(), Influences.end() ); // Add zero weights if number of influence is smaller the needed or remove influences with smallest weights from back Influences.resize( MAX_BONE_COUNT ); // Re-normalize weights such that they add up to 1 Normalize( Influences ); } HTH, -Dirk
49. DX11 #line directive in HLSL and debugging

Hello, I recently found out about the "#line" directive in HLSL. Because I handle #include's manually, the line numbers in shader compilation errors are incorrect and dynamically adding these "#line" directives while loading the shader solves this problem which saves me a lot of time as I know precisely where to look when I make an error. However I noticed when I enable this, I can no longer debug shaders using Visual Studio Graphics Debugger. f I want to debug eg. the vertex shader, it asks me for the source file (while the right source file is there in the background! See the image). is there some kind of bug with Visual Studio or is this just an annoying side-effect from using "#line"? Anyone has experience with this? Cheers!

• For Beginners

Public Group  ·  1 member

• GameDev Challenges

Open Group  ·  86 members

• 0
• 0

1. 1
Rutin
44
2. 2
3. 3
4. 4
5. 5