• Content count

  • Joined

  • Last visited

Everything posted by Eastfist

  1. I'm using Qt 4.8.7, which seems to be the last of the line of Qt version 4. I don't want to jump to Qt 5 simply because installs are getting bigger. Granted, they are trying to provide support for more operating systems, but it is very clunky. I looked into Necessitas for Android and the whole process of getting your app onto a mobile phone just seems clunky. Technically it all works, but usability goes out the window. I'm sticking with desktop deployment for now.
  2. It's been a LONG TIME since I last updated you guys on my game engine. This is what I've accomplished so far: https://youtu.be/sWIAZwODEMo
  3. http://qt.eastfist.com I'll be putting up a series of very basic tutorials on Qt c++ while I recover from surgery.
  4. Is my frame time too high?

    You need to do some heavy processes in that render loop. Then you'll see if that frame rate is going to hold.
  5. Just translated some image distortion algorithms from c# to Qt c++. Looks amazing, although not ideal for real-time rendering. Have to still learn about bilinear interpolation and direct pointers to pixels.
  6. Crafting a 2D RPG

      You can say that again.  Very appropriate level of abstraction for beginners.
  7. I realize now that if I continue to rewrite my code, I'll never get it done. This iteration, though, is quite robust. But it seems I encounter a new problem everytime I implement a new feature to make it easier to use. For example, today was all about make tabs.
  8. Qt manages to open/draw a 24 megapixel jpeg with ease (because of built-in double-buffering in their widgets). However, in GIMP, which is built with GTK, it tears all over the place. I dare someone to write a Qt paint program comprehensive enough to compete with GIMP.
  9. Object-Oriented Game Design

    I love how well c++ runs (when the code is good). But I also understand why it's intimidating to new programmers (because c++ is not my first programming language). But how I learned it coming from Visual Basic was to look for the patterns in language syntax. Imagine one day when we'll all be programming with full graphical rebus language, looking like some kind of code we dial into Mortal Kombat. :P
  10. Success! Qt "real" 3D rotation transformations give me Mode-7 F-Zero type of rendering. Opens up all sorts of possibilities. Check out my video: http://youtu.be/KuTBzhBqU4Y
  11. First goal after completing the development kit is to "port" the fundamental seminal games like Tetris, Pac-Man, Mario. If I can do that with ease, then I will have accomplished what I set out to do. Of course, I don't want to get ahead of myself.
  12. New GUI is coming along nicely. Stability is the main issue.
  13. [quote name='JTippetts' timestamp='1346535272' post='4975551'] What you should worry about instead of language progression, is learning one language [i]really well[/i]. Once you have a strong grasp on programming, you will understand that the differences between most languages is very superficial.[/quote] +infinity OP, make an HTML+Javascript+CSS webpage game first. Make a div box move around on the screen when you press the keyboard. Then try to duplicate that in c++. Once you understand what it takes just to make a simple rectangle move on the screen, then you have conquered your first step. Everything else is built on that and it will become very complex so organization is going to be vital.
  14. Kind of stuck in learning.

    If you're a beginner, I suggest not diving into OpenGL or even DirectX, just yet. Learn the native drawing API of your system or tool first. If you're using any of Microsoft Express editions, jump into GDI+ (or even GDI). Otherwise, there's Qt, which has their own QPainter class that makes those calls internally for you. At the least, it guarantees it will run without a dependency on the OpenGL or DirectX libraries.
  15. How many of you are self-taught/hobbyist programmers

    Not completely self-taught in the sense that I went to Barnes and Nobles and picked up a 400 page "how-to". Took a few programming classes in high school (Turbo Pascal) and college (VB.Net, java), but didn't major it in, never wanted to become a "professional". Wanted to go into filmmaking. But I wanted to focus on something in the creative arts, so I just dipped into whatever interested me and for some reason programming and digital drawing and graphic design seemed 2nd nature to me. But systems and how things work also interests me. But learning how to learn is crucial. You learn the basics of programming from Pascal, it teaches you how to organize variables and methods. Then you pick up HTML, then VB.Net, then go back to PHP, then to C#, then to javascript, then to java, then to c++. You realize programming concepts are almost all the same, it's just that the language is different. This is why object-oriented programming is so popular. Then you take this "pattern revelations" or like when Neo finally sees the code, and you apply it to real life. You see that the code works the way it works because the people who wrote it needed to base it on something, and that is their own real life. So software that is clunky but looks really nice are made by people who are superficial. Software that is minimal in design but never crashes and is scalable is written by people who are good at efficient problem solving. It could just be my generalizations, but it really is the soul of the programmer in the software. So if I applied this to my own software, it would be incomplete and tacky because I'm still learning about all the parts and slapping it all together with duct tape. LOL!
  16. Realistic Encouragement vs Trolling Tear-down

    Very encouraging post, OP. However, I think there's still a misconception that newbs pursue game development to become paid professionals. If we changed the original post just slightly to encompass all pursuits, then it'll be wicked awesome. To any and all, make a game because you want to, because you can. It doesn't matter if it sells or anyone plays it. Just do it because you are driven to. If games are to become a true art medium (Roger Ebert may be correct about the state of it), everyone needs to be free to create them, and it needs to be as simple as picking up a stick and drawing something in the sand. Then, who's to say, what possibilities ANYONE can come up with?
  17. I wonder if I could send images to Phonon and take advantage of Phonon's DirectX fullscreen mode. If my understanding is correct, on Windows, the DirectX api is called and plays the video at true fullscreen (changing the screen resolution). I looked at the QAbstractVideoSurface code and it looks like it just draws it scaled up. Don't know if it changes the screen size for better performance.
  18. Back in high school, when I was taking my first Turbo Pascal classes, I didn't realize how important learning a "bubble sort" was. Now, having to implement my own Undo/Redo framework for my application, my Jedi Knight training has come full circle. Whodda thunk?
  19. I've been weary about which media formats I should allow in my engine. If my understanding of MP3 is correct, I cannot use the MP3 sourcecode (particularly the decoder) because it is owned and patented. Some encoders use are not written by the patent owners, but even then it's risky. So, as long as my engine doesn't encode or decode MP3s, that means I can allow MP3 files in the project because the user would have to obtain the encoder/decoder on their own. I think this is corre...
  20. Great article. But really, bounding boxes (aka rectangles) should be sufficient for most collision detection for sprites, especially for the beginner game developer. The only reason I could see for wanting pixel-level collision detection is for simulations. Pixel-level anything will slow down processing time.
  21. Why Do you need to fund money to make a game

    If you want to make a commercial product (which means it's for profit), odds are you have to invest money into making it attractive to the general consumer. If you're making an indie game, or a very personal project, you don't have to invest even one cent, but you will still have to put a lot of labor into it (hopefully you have a day job or other source of income). I'd say, by the sound of it, you can make your 2D side scroller for free. There are a lot of free game development kits out there. And when it's time to distribute it, post it on your website, hit the forums, put a playthrough on YouTube, etc. I guess it's a matter of intent: make money, or create a game for people to play. Ideally, you want both, but if you're lacking the resources (mainly money), you can still do one of the two. ;)
  22. Qt provides everything to the average developer for making a robust 2D game engine except access to the local API for something simple but vital as changing screen resolution.
  23. What *is* game programming?

    I think drop the word "game" from "game programming". Game programming is nothing but programming. You're just implementing an aspect of the game design process. Designing a game, then, is something else. Anyone can be a game designer. If you want to learn to program a game, come up with your game idea first. Then find a means to get it made. You can even make a game with Javascript, CSS, and HTML, the most cross-platform languages right now with some limitations. Webpages have made text-based "go to page" adventure games incredibly easy to make. That's a start. Then, as your game demands more features and gimmicks, you might want to start taking control of more aspects of the internal implementations. This is when you have to learn VB, C++, C#, whatever. It would then be more than just learning the language, you have to understand the concepts behind programming (object oriented programming, organization, abstraction, encapsulation, etc), otherwise you'll be making clunky, inefficient, brute-force software. Like most games, start with a piece of paper and a pencil.
  24. After watching a video of the first graphical editor made in 1963 called Sketchup, I'm starting to think how I can make my own design easier and more intuitive to use.