Jump to content
  • Advertisement


Senior Moderator
  • Content Count

  • Joined

  • Last visited

  • Days Won


swiftcoder last won the day on September 19

swiftcoder had the most liked content!

Community Reputation

18893 Excellent

About swiftcoder

  • Rank
    Moderator - Game Programming


  • Twitter
  • Github
  • Steam

Recent Profile Visitors

111662 profile views
  1. swiftcoder

    OOP is dead, long live OOP

    I've always assumed that Linus objection is to the rest of the baggage that goes along with "not C", rather than the OO part. There's quite a bit of OO in the linux kernel. Besides, Linus clinging to C is a bit of an outlier at this point: operating systems written in high-level languages abound... Symbian was written in C++, and prior to the emergence of iOS/Android, it was the dominant mobile OS. Microsoft Research's Singularity uses a C# kernel and device drivers written over a C++ HAL. Redox is shaping up to be a fairly complete OS written entirely in Rust. And of course, if you go back a bit in computing history, LISP and Smalltalk were each operating systems in addition to programming languages for the machines they were originally developed on.
  2. swiftcoder

    OOP is dead, long live OOP

    Every "OO" codebase I've had the pleasure to work on in the last 6 years in the software industry has been a disaster of every form of "bad OO". And it hasn't been uncommon for me to be the only person on the project who has any recognition of that fact. Outside of GDNet I know... maybe 8-10 total software engineers who could name the issues with "java-style OO" that Hodgman lays out. I'm not sure it's even feasible to tackle the university pipeline when so much of the software industry doesn't take this stuff as a given.
  3. swiftcoder

    What Makes a great Sci-Fi?

    Space is big and empty, and particularly the folks in the "realistic space flight simulator" camp tend to make you spend the majority of time in transit between interesting things to do. There's nothing particularly necessitating this, though. Look at the recent crop of space-themed roguelikes (FTL, Orion Trail, etc), where travel is existent apart from a screen to choose the next scenario. Mass Effect does fairly well at this too - apart from a few space mining sequences, you basically just jump from planet to planet, and spend downtime between exploring your ship and interacting with shipmates.
  4. We can find plenty of people who have actually learned French, English or Russian, and ask them how long it took, fair enough. Unfortunately, your question isn't as concrete as this. I've never made a 6vs6 online games with 21 different ability sets. Nor, I'd warrant, has anyone else on the forum. Plenty of them have made games, and those games took anywhere from a few person-weeks to a few thousand person-years to develop, depending on complexity. Complexity isn't easy to predict - it depends on a lot of choices you have yet to make. Rendering coloured boxes in an engine like Unity is a matter of a few minutes. Doing the same from scratch might take weeks. The "online" in your requirements might be solved by taking an off-the-shelf networking middleware, and you could have a basic version of it working in a few weeks. Or you might spend years learning the ins-and-outs of networking...
  5. You can do a simple version of this by basically pasting together snippets of shader code as you walk over the tree, and then compiling it at the end. Basic material systems often work like this, you need just enough logic to keep the variable names consistent as you paste together source chunks.
  6. You probably didn't mean to post the 'delete' version of that link? Your voice sounds fine, though you probably need a better microphone (even a cheap directional mic should do the trick). And maybe some better filters.
  7. swiftcoder

    Beginning developing

    Around these parts, we generally prefer to encourage newcomers to the field. We also prefer to keep discussion in the For Beginners forum at least somewhat relevant to helping out the original poster. With that kind of attitude, I can only hope you aren't in the business of teaching kids anymore. Not all kids are the same - I certainly would have taken an interesting project over sweets at any age.
  8. swiftcoder

    Beginning developing

    Most indie game devs hold day jobs when starting out. I really wouldn't recommend quitting your day job until you have a solid expectation of income from game dev. If you work for a game studio as an employee? Same as anyone in another 9-5 job, though some overtime is to be expected. If you are talking about indie game developers, then due to the aforementioned need to maintain a day job alongside game development, likely to be very little. My day job is writing operating system software for a large enterprise. It doesn't scratch the same itch for me that game development does, so I work on small games in my free time. Not that I've ever heard of. Some folks can get a bit obsessive over it, but at the end of the day, it's much like any other job/hobby.
  9. swiftcoder

    I think my game is so terrible

    What Python framework are you using for your game? PyGame, pyglet, something else? Can you link to an example of what is going wrong with the graphics, and/or the relevant code?
  10. I've never heard it called that, but yes, that seems roughly equivalent to an Entity/Component system.
  11. Yeah, so I presented an unreasonably simplified example, suitable for a dynamic language where you don't have to worry about lack of RTTI. In practice, if you make your entity class be a pure data container, and put all the functionality into component systems that operate on that data, you can avoid use of RTTI entirely. Yes, some component systems may boil down to a big switch/case statement, but that's not necessarily a bad thing.
  12. swiftcoder

    Semi-complete Newbie

    No, I mean an actual AAA game. Produced by a well known studio, funded by a major publisher. Fortnite, the most successful game of the past year. Gears of War 4. Street Fighter 5. Darksiders III. And so on and so on. These aren't games build by some kid playing with a WYSIWYG level editor. They are each major productions costing tens of millions of US dollars.
  13. swiftcoder

    Semi-complete Newbie

    This is a generalisation that does not hold in practice. Professionals use the best tool for the job, taking into account cost, speed of development, compatibility with target platforms, etc. Unity comes out on top of this equation quite often (particularly for games targeting mobile platforms). Unreal comes out on top even more often for PC and console titles, with a significant number of AAA games in the last few years being shipped on the same engine available to you, for free. Yes, those teams likely customised Unreal Engine more than you can afford to as a solo developer, but the fact remains they chose a "free" engine for AAA titles.
  14. This is one of the reasons that heavily inheritance-based OO techniques have fallen out of favour among a crosssection of game developers. A popular alternate approach is to go "component based", and replace your UseableItem hierarchy with a single class. That class then contains a set of components that implement all the required behaviours... HealthPotion = UsableItem(sprite: "red_bottle.png", sound_effect: "drinkme.wav", on_use: [AddHealth(health: 100)]) InvulnerabilityPotion = UsableItem(sprite: "yellow_bottle.png", sound_effect: "drinkme.wav", on_use: [SetInvulnerable(seconds: 5)]) PowerUp = UsableItem(sprite: "mushroom.png", sound_effect: "levelup.wav", on_use: [MakeBig()])
  15. It's important to separate Flash-the-browser-plugin from Flash-the-authoring-environment. The former is pretty dead. The latter (now rebranded as Adobe Animate) is a tool for authoring HTML5/javascript, and if you liked the Flash workflow, it's not a bad tool.
  • Advertisement

Important Information

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

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!