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

      DORU an idea i'm brewing up just need opiniouns

      That's somewhat better in detail. Still don't have enough who's, like who is doing the invasion/raid? Is that the British since you mentioned the colonial era? You really shouldn't talk about the betrayal, like I recommended in my last post, because again, we're going to expect it, and it's going to lose all of its surprise if you're aiming it to be a surprise. Also, I don't think sequel bait endings are a good idea, especially since it's not guaranteed a ton of people will like the game enough to play a sequel. For sequels, I'd wait on if this game receives positive criticism first, and then start planning for the sequel.
    3. fatamorgana-999

      2D

    4. Naruto-kun

      Real time C# script interpreter

      Perfect. Your sample is just what I am looking for. It isn't intended for public release so that part is no concern.
    5. P.B. Stairmaster

      Looking for additional programmer

      You're right, should have mentioned that I'm using Unity/C#. I don't want to give away too many details of the game publicly, but I will say that it's a rhythm game. Assets have already been taken care of.
    6. Hello I want to create sfx based on 50s/60s radio recordings. It can be songs or radio programs, that I could later edit sample in priopriate way. Do you know any sites with such a audio material? Preferably in public domain or CC0 Regards Crane
    7. Alright, I think I figured it out at least partially. My sprite's rotation was actually fine. The problem was scaling. Since the child scaling takes place in local rotated space, when I rotate it back using the conjugate the sprite is distorted by the parents rotation. I'm using an orthographic projection, so it was hard to tell the difference in my test case. I can fix the issue by calculating each component of the transformation separately, and multiplying them together at the end, notably removing the rotation from the scale calculations. So if I want to do my decomposition trick, I can just do it with the final world rotation and use the resulting quaternion for the rendering matrix calcuation. But I worry doing things this way will introduce artifacts that I can't immediately see. Scaling in rotated space is actually the correct thing to do, so I'm not fully convinced that I'm doing things correctly, but I can't think of another way to solve the issue.
    8. CatsHeads

      [Android] Shapes And Holes

      Added a split-screen mode for two players. Found pairs by one player make the game harder for another player (more types of shapes appear and speed is higher). I see the gameplay trailer is not available anymore, and I can't change the first message. So here's another trailer.
    9. You could put an eye out.
    10. Today
    11. fleabay

      Looking for additional programmer

      Things you didn't address that most people will want to know without having to dig... What language? Are you using an engine? What type of game? What about assets?
    12. Pointers considered harmful. Handles are the better pointers. 😋 https://floooh.github.io/2018/06/17/handles-vs-pointers.html Weak pointers, and/or ref counting are overkill. Even raw pointers on 64bit platforms are overkill. Integer-based handles actually have a lot of advantages over pointers 😁
    13. Hello,I'm searching a pixel artist ,who can draw in monochrome colors.I have a small project ,which has a prototype link:https://hust-writer.itch.io/die-or-cry .This game is a platformer/action ,like Broforce or Gonner ,but very difficult like Dark Souls. If you interested write me in pm.
    14. I am a student whose goal is to create small-scale but well made projects that can go in a portfolio. The project I am working on currently I believe will also be good enough to go on Steam and make a bit of money once it's done, but I really need to bring on more programmers who can help alleviate the workload. I am a programmer myself, and will get this done with or without help, but I would like to move as fast as possible. The project is simple enough that we could be done in a few weeks, and then we will both have something which we can send to employers, plus a potential source of income. If the above sounds interesting to you and you enjoy programming and are good at it, get in touch, preferably via PM, and I will tell you more about the project. I can provide plenty of examples of past work so you know I am fo realz.
    15. dave j

      Programming game using Python

      The Raspberry Pi people have produced a free ebook called Make Games with Python which uses pygame and doesn't use anything Raspberry Pi specific. It starts off with very basic stuff and progresses to a simple space invaders type game but since you did describe yourself as a total beginner you might find it useful. They have lots of other stuff that also includes some game related content but you'd need to search through for it - there's a risk you might get sidetracked into wanting to do hardware projects too. ;)
    16. krystian_g

      Props for my upcoming game

      thanks! Aceticon yes I use Substance Painter.
    17. Rutin

      My Graphics Bin

      I'll occasionally share my "unpolished" and "polished" 2D and 3D art in this album.
    18. Rutin

      Props for my upcoming game

      Looks good! Great job!
    19. Aceticon

      Props for my upcoming game

      Did you use Substance Painter or something else? PS: Really cool models, makes me wish I had a lamp like that!
    20. That is correct. Weak_ptr is there to work with shared_ptr. A unique_ptr is supposed to be unique and it makes no sense to have a weak_ptr that locks into another unique_ptr. In any case, it sounds like you need to use shared_ptr + weak_ptr. They are there specifically for the type of situation that you describe.
    21. You are correct. The std::weak_ptr implements the observer pattern on a std::shared_ptr. It's the idiomatic C++ way to do what you're asking, and exactly why the std::weak_ptr/std::shared_ptr was invented.
    22. Thanks FRex. As soon as I turned on the hidden folders through control panel I am able to see the .vs folder including it's massive size. I will look into some of the tools you suggested. Mike
    23. I agree with Irusan, and I'd like to go into a little more detail about his suggestion. It's one of my favorite topics in game dev, the entity component system (ECS) pattern - an incredibly simple yet powerful approach to solve exactly the sort of problem as you have it in a very elegant way. The basic idea is: Instead of modeling things in your world as a collection of separate explicit classes (perhaps related to each other through inheritance), you make everything a generic "entity" that has "components" attached to it. In the purest form, an entity does really nothing other than storing a list of components, while components are objects of different classes that can store different data and define different behaviors. The simulation of the world (in your case mostly the interaction of the player with items) is implemented by so-called "systems" with process entities on the component level and depending on which types of components they have. An example: Let's say you have things in the world that can be picked up by the player, and things that can't. In order to allow the player to be able to pick up an item and store it in her inventory, you assign a "PickUpComponent" to it, and the whole pick up logic is implemented in a "PickUpSystem" which will simply ignore all items/entities that don't have a PickUpComponent. This pattern can be applied to almost the entire game logic and leads to very clean, flexible and elegant code. Discovering and understanding it was probably the biggest game dev epiphany ever for me, that's why I'm sort of an "evangelist" for it :D. The implementation is crazily simple and short, especially in relation to the great benefits it brings with it. The difficulty lies in the application. It takes a while to really understand how to use the concept properly and how to design your components and systems and how everything interacts. I'm using it since a bit less than two years now, and I still discover new fascinating tricks frequently (I'm just a small on-off hobby game dev though). There are many different implementations of ECS for different languages, game engines and frameworks. I have written my own very very basic one, which still provides a huge advantage over how i did things before. The largest part of the power of ECS really lies in its very basic concept/architecture, which can be implemented with just a few lines of code. There are several different opinions/philosophies about how it should be done the "right" way, some more "extremist" than others. After two years of experimenting and fixing bugs and flaws while still keeping the core code *very* simple all the time, I arrived at something with the following core characteristics: - An entity is an object/class that contains an array/list of component objects. Entities are self-sufficient and do not require some kind of "entity manager" to be usable and "alive". Other than the list of components, entities hold no other data. - Components are objects/classes that implement a Component interface with is only used to store them together in an entity's components list. Other than that, they can be anything. Some purists say that components should contain only data and no logic. My approach is less strict, but I try to follow the rule that logic in a component class should only handle the component and it's own data and not know about other component types, systems or any other parts of the game. This definitely helps to keep things loosely coupled and reusable. Some ultra-purists even say that components should be immutable and that whenever component data changes, an entire new component object should be created. I ignore that. - Components are stores in an entity in a hash map with the Component's class type as the key. So, an entity can only have one component of each type. Also, inheritance is not used for defining component classes. I have experimented with that, but only ran into more problems than benefits. - As a very useful helper tool to manage entities, I have an EntityList class which wraps a list of entities and provides a method to filter entities by their components ownership, i.e. "entityList.getEntititiesWith(ComponentClass1, ComponentClass2, etc.)". This method returns another EntityList, providing the same interface and allowing further filtering. EntityLists are used everywhere. Usually, a game has one "primary" EntityList that basically holds the entire game world (unless splitting it up into multiple lists is advisable for performance reasons). Other places where EntityLists are used are things like player inventory, and for filtering in "systems" that only operate on entities that have specific components. - While "systems" are a core concept in my solution, they are *not* part of the library implementation at all. A system is basically just an object or function that operates on entities that have specific components (like a "GravitySystem" on entities that have a "PhysicsComponent" with properties like mass, velocity etc.). How exactly systems are implemented can vary and depends on the particular game. You can take a look at my tiny ECS (actually just "EC" without the "S", I guess) library here: https://github.com/sebastian-bechtold/manfred-ecs-kotlin/blob/master/src/ManfredEcs.kt As I said, it is really super small. It's written in Kotlin, but you could easily port it to any language you use.
    24. Brain

      MMORPG Brilliant Game Idea.

      This is because an "everything game" is the complete antithesis of the commonly held best practice "find the fun in the game and incrementally improve it", which by its nature involves identifying one or two fun mechanics in the game. If you're trying to do everything by its very nature incremental advancement is impossible to do properly.
    25. TheLiamEnterprise

      DORU an idea i'm brewing up just need opiniouns

      Well Geonamic it's really complicated but i'm thinking on setting it to be based on during the colonial era ,and as for how she got separated from her father when her father told her to hide during the invasion/raid, joining the fight to defend his village and his people in the process her father was taken as a prisoner. After learning she's a demi goddess she has to save her people from the One only known as Umermu (In my Language Means The Wicked one) who wants to sacrifice her father and enslave her peoples soul for all eternity, and the betrayal comes at the end which is a satisfying end but can also lead to a sequel...
    26. 1024

      MMORPG Brilliant Game Idea.

      This idea sounds a bit like Second Life (although I don't know much about Second Life other than reading its Wikipedia page) However, an "everything game" is usually not a brilliant idea, it just seems like it in theory.
    27. One more thing. If you are worried about speed with std::shared_ptr, you simply don't have to use it. You can put an integer in your class somewhere, and make a pointer class to your it. If you aren't using threading in that part of the code, don't even make it atomic. std::shared_ptr has a reputation of being slow. In some cases it allocates the counter and the actual object, in a separate memory blocks, so that means you have a whole second level of de-referencing, and even where you don't, the code may have to check for it. I never used it because it's hard to determine what it's actually doing. You can make make some simple reference counting in a few minutes without it and it's pretty simple. Also whether you use std::shared_ptr or not, don't use any smart pointers everywhere, only where ownership needs to be represented. You don't need to pass them around when you know ownership will not change and you are just accessing your data. Basically you typically never pass smart pointers in and out of working functions, they are just members of other class objects or are in containers. There may be exceptions but if you are passing them around a lot you are probably doing something wrong.
    28. too_many_stars

      Managing pointers upon object destruction in C++

      @pcmaster - I was reading about the weak_ptr option yesterday but a number of sources wrote that's not available for unique_ptr only the shared_ptr. Is my understanding incorrect?
    29. krystian_g

      Props for my upcoming game

      I made these small models and textures for my upcoming game. Hope you like it;)
    30. _Silence_

      Deferred shadowmapping

      Do you mean that when looking at your scene with the same view and projection, you are seeing your full scene correctly ? Because at first glance your image looks like as if your light view is not properly set.
    31. The common design pattern to use with such a scheme is called Observer. It is depicted in the Gof book: With templates you can achieve something not too intrusive, easily and fully reusable everywhere you would need it. Smart pointers are also a good choice. But be careful with shared_ptr if you want to go for them, they are not the fastest thing. You can achieve to make your owns which will be far more fast.
    32. How about something like this......... Each relevant player and/or NPC has a smart pointer referencing the Troll. And you also have a smart pointer reference which represents the Troll itself somewhere in a list of your MOBs. When the Troll dies it's pointer goes away, and it has a flag which sets it to dead. Now when the other NPCs or players that are referencing it try to access it, they find out it's gone and simply set their smart pointers to null too. Also If they are set to a different MOB, the same thing happens. So the actual memory for the Troll stays around but it's flagged to dead. When the Troll is no longer being referenced by anything, it's collected by the smart pointer system.
    33. You can Reference Count (RefCount) pointers to your objects, which would prevent them from being deleted in the first place. Only when nobody points to an object (RefCount==0), you actually destroy it. You do this by only ever calling Release() on your objects and never the destructor directly (Release will call it). Another option would be weak pointers (C++ standard weak_ptr + unique_ptr). With a weak pointer, you can first simply test whether it's nullptr before dereferencing it. Another option would be to remember just a unique handle (GUID) and every time you're trying to access info about an object, you'd ask a manager (GlobalTrollManager.GetTroll(warrior.lastCollidedTrollID)) and test for nullity, instead of directly accessing the troll (*warrior.lastCollidedTrollPtr). The unique IDs would never recycle, every new object would get a completely fresh one. The manager, if it doesn't find the ID in the troll list, would simply return nullptr ("I don't have such a troll at all"). In all cases, you should be thread-aware, make sure you don't have any race conditions.
    34. Astirian

      Defender of the Oasis

      This was my first collaboration with someone else doing the art. I maintained the structure of the first game but changed the control system to something more traditional for mobile.
    35. Good Evening, I have a question that's been a constant source of frustration and I need to learn to deal with it. Say I have a warrior with a memory (AI) module that polls with world through it's vision and it 'remember's' through a pointer (pointing to a troll) that a troll was detected 2000ms ago. Now, say I have a wizard that collided with the same troll, and the wizard now has a pointer to the troll 'remembering' the last thing it collided with. Somewhere down the road, there's a delete call on the troll object. Now I have the memory module and the wizard with pointers to a deleted object. Let's multiply this over hundreds or thousands of objects and it becomes insanely complex with a multitude of objects and various pointers pointing to objects that may or may not be deleted. So my questions is this. Is there a design pattern (hopefully not too obtrusive), algorithm, or a way upon object destruction to notify every other object that's pointing to the destroyed object that it's been deleted so i can NULL the pointers? Thanks in advance for your time and answers. Mike
    36. File searchers are another useful tool class that can become similarly very fast by restricting itself to NTFS file systems and file metadata only (for example Everything, which I use, but there are a couple of others). They show all files, allow easy and very accurate search and deletion of unwanted temporary or disposable files of the kind that's being discussed in this thread, and are fast and lightweight enough to allow realtime monitoring (what's the last log file? has that file been actually updated? What's this intense disk activity? Find it out by sorting all files on the disk by modification date).
    37. Astirian

      Defender of the Wood

      This was my first ever game, I kept the scope small and stuck to 2D, so a mobile app was a perfect beginning! To this day I'm still not sure the mechanics are actually fun.
    38. Septopus

      Tips for game programmer portfolio

      As far as web builds in Unity go. Turn ALL your graphics and quality and texture and LIGHTING and etc. And etc. Settings all the way down. Way below where you want them to be. Turn all your compression settings up. Build it, test it, slowly bring them back to where they need to be one at a time. 190mb seems pretty big for a demo, perhaps some of your meshes are too large/detailed? Also pay close attention to your number of draw calls and instancing issues. Use the frame debugger to help sort that out. Also web builds are single threaded, so some attempts to optimise with clever coding might backfire and result in slower code. Hope it helps. You could also create a project page(here, see menu above, or elsewhere) where you can write a bit about it, post some screen shots, and make a download available. Then you can just shoot a link to whomever you like.
    39. I suggest making your item class a container for behaviours and then make these behaviours your unique classes. Each behaviour would have verbs (look, take, open, etc) that determine how the player interacts with it. The box would then have a "container" behaviour that lets it be opened/closed and items taken in or out of it.
    40. Maybe talking about the specifics of my program was confusing the question... I may edit the OP. What I am asking is how do you insert unique code into a gameloop that uses generic classes... like at what point do you start using unique classes and how do these get incorporated. I'm just having a hard time working out a way to put unique checks and events into scenes.
    41. Inverse bind pose matrices are come from COLLADA file, so you don't need to re-calculate them. Calculating joint matrices could be: jointMatrix[i] = jointTransformInWorldSpace[i] * skin->invBindPoses[i] * skin->bindShapeMatrix /* JMi = jointTransformInWorldSpace[i], joint transform (not inverse) in scene in world space IBMi = skin->invBindPoses[i], comes from collada file, see INV_BIND_MATRIX input in <joints> element BSM = skin->bindShapeMatrix, comes from collada file, see <bind_shape_matrix> in <skin> element */ According to your shader you are not using model matrix in your shader which is fine. If you were use MVP instead of ProjView then you would need to pre-multiply inverse node transform to joint matrix: /* if MVP is used instead of ProjView in shader or if you only have MVP in shader */ jointMatrix[i] = inverseTransformOfNodeThatMeshIsAttachedToInWorldSpace * jointTransformInWorldSpace[i] * skin->invBindPoses[i] * skin->bindShapeMatrix /* JMi = jointTransformInWorldSpace[i], joint transform (not inverse) in scene in world space IBMi = skin->invBindPoses[i], comes from collada file, see INV_BIND_MATRIX input in <joints> element BSM = skin->bindShapeMatrix, comes from collada file, see <bind_shape_matrix> in <skin> element */ but as you can see this requires extra inverse and extra multiplication... Then jointMatrix array could be used in shader as joint_transforms I guess. I may be wrong, if this is true then I can improve/fix my equations if someone who knows skeletal animation better than me
    42. Hero Fantasy Pack Vol 2 is the sequel orchestral pack expanding on the dark fantasy musical themes. Prepare for even darker and more evil songs to add to your game! As with Hero Fantasy Pack Vol 1 this pack has all its themes split into several parts for an adaptive music approach. By splitting up a theme in multiple parts you can adapt the music’s intensity and dynamics to a scenario where the player goes from a harmless situation and suddenly encounters great danger and music that enhances the intensity. What’s included in the asset:- 4 different themes for easily adapting to the correct mood of the scene.- Each song consists of perfectly cut wav files to transition between the different section of the song with a nice reverb tail to make the transitions as smooth as possible. All songs come with a few stingers/hits if need to make an abrupt ending of the song or for a percussive transition between the different parts. - All parts of each theme consists of seamless loops as well if you want to edit your own version in your audio editor (or just loop in Unity.) - 324 MB in 93 HQ 16 Bit, 44kHz wav files. Buy Hero Fantasy Pack Vol 2 YouTube and Soundcloud previews:
    43. Geonamic

      Battle Victory Quotes

      In my turn-based, RPG game, Forsaken Alchemy, I plan to have voiced character monologues and dialogues play along with some character animations after every battle, and I'd like to hear your thoughts on if wording is presented to be realistic in speech patterns, how all the characters sound in personality, if they sound similar in personality to each other, and any feedback on anything. There are in-battle criteria to trigger certain quotes more often than others, but I won't bore you with them. I just wanted to put that out in case you were curious how the below criteria matters in probability. Every quote in the solo quotes spoiler box is an instance of the character having a monologue. It's not him/her saying every single quote after one battle, so RNG will decide which of the listed solo quotes will play alone after a battle. For example, "Yes! I won!" and "That was easy!" are randomly picked per battle. The person is not saying, "Yes! I won! That was easy!" Solo quotes: When there's an empty line of space between dialogue, that means the next line is the start of a new dialogue. For the example below, after the second quote from Alvis is a different instance of dialogue that plays if RNG picks that to be played instead of the previous instance. Alvis: “I wish I knew even half as much knowledge that you know.” Victoria: “In time, you will.” Alvis: “That’s a pretty optimistic view.” Victoria: “For a scholar, you did well in that fight.” Alvis: “I’m just lucky I got out of it with everything intact.” Victoria: “You should be more confident about your keen strategies.” Group quotes:
    44. Randallflagg

      Looking for Creative Writers for Bestiary

      I do music,sound fx and write. Are position still available?
    45. This would require you expanding the functionality of your parser to perform game-logic tasks not related directly to user-input. Like deciphering what an object is and determining how to describe it to the player, but that might be beneficial to your process, and the development of the parser itself. It could also make it easier to save and load(to/from file) objects using JSON or some other simple serialization method. Again, this is mostly a shot in the dark. Hope it helps somewhat.
    46. I'm no expert in formal methodologies but I like to think about the data itself before I try to think about things as individual objects(classes). So, as I understand it(hopefully correctly) it seems you are having trouble deciding how to organize the item data that you are needing to store and access. Let me throw a dart at the board across the room: You're writing a text/phrase parser are you not? Why not include a small array/list of item attributes in string form into your Item class? You could have one for descriptive info: "type:box", "color:blue" You could have another for actionable attributes: "opens:front","button:top","explodes:30" This would then be a blue box that has a button on top and opens in the front, which explodes 30 seconds after opening... Hope it helps!
    47. Hey guys, I thought it would be helpful to list off some not super well known resources for character animations. I personally like MoCap Online. They have a ton of animation packs and are even having a site-wide 50% off sale this month if you're interested. I like that they have free demos so that you know if you want it before buying. What about you guys?
    48. Geonamic

      DORU an idea i'm brewing up just need opiniouns

      This is so lacking in detail for story that I can't really say anything except anything can happen. It could end up being great or horrible. What you've presented was an idea with what's what and the main protagonist's name without the when, how, why, and some who's. I'm not asking for the whole story, but some more details would be better to grasp this idea further. How did Doru's father get separated from Doru thanks to the slave masters and a god? What should Doru save her people from after learning that she's a demi-goddess? Why tell us there's a shocking betrayal if we have no idea about it? That just makes us expect someone to betray Doru at any moment now.
    49. Hello, everyone. Me and a current team of 4 others are working on a horror-adventure game inspired from "found-footage" and "mockumentary" indie horror films. We are in need of a programmer to help our other develop game-play aspects, create unique enemy AI, and assist in creating other systems such as game data saving. We also are looking for a 3D artist to create 2-3 of our enemy creature characters based on concept art and animators to bring said characters to life. For more information on the project, please check out our GameJolt page here: https://gamejolt.com/games/adevilsplayground/387787 If you are interested, please send me an email or add me on Discord at anytime. Discord: DickShmiggleTM#1703 Email: greenlabelgames@gmail.com
  • 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!