Results 1 to 7 of 7

Thread: Is this possible with qt?

  1. #1

    Smile Is this possible with qt?

    Hi all. I’m new to the forum.

    Sometime in the future (not so far future), i’ll start creating my game engine . It’ll be based on the ogre3d rendering engine.
    I’m a windows guy and i like what directx does. The problem is qt uses opengl but it’s also open source.

    This is a part of what i intend on integrating into ogre 3d to make a full game engine:

    Physics:
    1. Physx + source code for physics engine
    3. Beam Ng (car physics and by the time it’s completed, everthing PS: I contacted them)
    2. Custom physics engine for the game engine (combination)
    3. Havok Physics, Havok Cloth etc.
    4. ODE
    5. Bullet

    Sound:
    1. Fmod Studio

    Graphics Renderer:
    1. The base which is Ogre 3d

    Game Engine Camera:
    1. All views

    Asset creator:
    1. Blender
    2. Zbrush
    3. Gimp

    Graphical Interface/API:
    1. DirectX
    2. Open GL (later on)

    Platform:
    1. Windows PC
    2. Others later on

    Language:
    1. C++ (obviously)
    2. Lua as scripting language

    Genre of games for engine:
    1. OPEN WORLD
    2. Racing
    3. FPS (maybe)

    AI:

    1. Custom AI for engine (combination) – Character AI – NPC AI – Enemy AI etc.
    2. Universal AI Kit from torque (i’ll just use it to as a reference for creating mine)
    3. Tactical AI Kit from torque (reference also)
    4. Havok AI

    Lighting:
    1. Ogre 3d

    World Size supported by engine:
    1. Large worlds up to 10km x 10km.

    Loading Screens:
    1. For open world- NONE
    2. For Levels: Maybe

    Others:
    1. Ragdoll physics
    2. Motion Capture support
    3. etc.

    I’ve not yet downloaded qt, trying to evaluate how i’m going to download such a large program.
    At the moment, i’m using vc++ and it does be able to do what i want or i may not just really know how to use it.

    I really need to be able to design the gui, and i don’t thing vc++ can allow me that pleasure without killing me.

    I know making this engine is going to take a considerable amount of time but at least, i have a plan and i also have a software idea that if it works out, it'll reduce development time by up 30-50%.
    I am not making the engine to learn game creation so i already know about the “create games, not engine” article. Rather, i’m creating the engine to create a game because no engine gives the functionality i need even though two came very close, Torque 3d and cryengine but they still lack some things i will need.

    Is it possible to do all this with qt and please is it possible to code/enable directx11 support for qt?

    I really like the feel of qt and would love it if this is possible.
    Thanks

  2. #2

    Thumbs down Re: Is this possible with qt?

    I probably misunderstood the purpose of this forum. I thought it was a help forum for newbies but considering the reply rate i shouldn't have expected anything else. No offence but that's what i've seen

  3. #3
    Join Date
    Mar 2009
    Location
    Brisbane, Australia
    Posts
    7,677
    Thanks
    13
    Thanked 1,596 Times in 1,524 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows
    Wiki edits
    17

    Default Re: Is this possible with qt?

    The purpose of the forum is to support Qt Newbies. The is no service level agreement that requires answers from volunteers within minutes, hours, or even at all.

    Qt is a cross-platform library not a compiler. If you can build C++ code for your engine/game that uses all those libraries and components without the Qt library then you can almost certainly build the same program including the Qt library for some components. You will need to use a consistent C++ compiler toolchain across the project's C++ components, including Qt. There also some documented collisions (and workaround) between Qt and Boost Signals if they are also present somewhere it that pile of pieces.

    If you want to use DirectX directly in a program that is also using the Qt library nothing is stopping you (in some configurations Qt5 uses a DirectX abstraction layer (ANGLE) itself). Of course you will have to develop for Windows only and you will likely have to use Microsoft's SDK and compilers (possibly counter to your "Platform: 2. Others later on" goal). Ogre3d abstracts some of that away but requires Microsoft's tool chain on Windows AFAICT.

  4. #4
    Join Date
    Sep 2009
    Location
    Wroclaw, Poland
    Posts
    1,391
    Thanked 342 Times in 324 Posts
    Qt products
    Qt4 Qt5
    Platforms
    MacOS X Unix/X11 Windows Android

    Default Re: Is this possible with qt?

    What kind of answer do you want ? If you are able to code all those things on your list, then using Qt as a gui layer will be trivial for you.
    If the only thing you are asking is "Is it possible to use DirectX in Qt ?" then why bother posting all those fancy engine features ? Yes it is possible to use DirectX, even a quick google query "directx in Qt" will return some useful links. Be more specific if you want reasonable answers, and please, don't be rude, because this is a community forum, nobody is obliged to even read your posts.

  5. #5

    Smile Re: Is this possible with qt?

    Sorry about the rudeness. Sorry.

    Quote Originally Posted by ChrisW67 View Post

    If you want to use DirectX directly in a program that is also using the Qt library nothing is stopping you (in some configurations Qt5 uses a DirectX abstraction layer (ANGLE) itself). Of course you will have to develop for Windows only and you will likely have to use Microsoft's SDK and compilers (possibly counter to your "Platform: 2. Others later on" goal). Ogre3d abstracts some of that away but requires Microsoft's tool chain on Windows AFAICT.
    If there isn't a possibility of integrating both opengl and directx support like ogre3d does, then it looks like i'll have to settle for windows only


    Added after 6 minutes:


    Just read a thread on the ogre3d forums on how it manages both directx and opengl. It says it uses separate rendersystem plugins for dx and opengl. I don't know if that is feasible for a game engine
    Last edited by Nathan2222; 4th December 2013 at 00:39.

  6. #6
    Join Date
    Mar 2009
    Location
    Brisbane, Australia
    Posts
    7,677
    Thanks
    13
    Thanked 1,596 Times in 1,524 Posts
    Qt products
    Qt4 Qt5
    Platforms
    Unix/X11 Windows
    Wiki edits
    17

    Default Re: Is this possible with qt?

    If you use Ogre3d's abstraction, and not DirectX directly, then you get whatever features that Ogre provides on whatever platforms it is supports them. Plugins, like the DirectX/OpenGL support in Ogre, are dynamically loaded implementations of a common abstract interface. This is a very common technique you can implement yourself (also used inside the Qt library).

  7. #7
    Join Date
    Jan 2006
    Location
    Graz, Austria
    Posts
    8,419
    Thanks
    37
    Thanked 1,546 Times in 1,496 Posts
    Qt products
    Qt3 Qt4 Qt5
    Platforms
    Unix/X11 Windows

    Default Re: Is this possible with qt?

    Quote Originally Posted by Nathan2222 View Post
    Just read a thread on the ogre3d forums on how it manages both directx and opengl. It says it uses separate rendersystem plugins for dx and opengl. I don't know if that is feasible for a game engine
    Most serious game engines do that. OpenGL is needed for console and mobile gaming but it is badly implemented on Windows, so they need Direct3D there.

    As ChrisW67 said, Qt also works around that Windows limitation by using ANGLE, thus only having to support OpenGL on all platforms.

    Cheers,
    _

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
Digia, Qt and their respective logos are trademarks of Digia Plc in Finland and/or other countries worldwide.