Announcement

Collapse
No announcement yet.

Nvidia Apex vs UDK Fracture

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    As i wrote here, http://forums.epicgames.com/threads/...3#post31259943 : Check this http://physxinfo.com/news/7438/febru...x-1-1-sort-of/ . I have GRB working with the febraury 2012 udk and the additional .dll from that link, but it supports Apex 1.1, not 1.2.3.
    I don't get warnings in the log and the chunks apparently behave gpu-ish well. I just played with it a bit though.
    With the March 2012 udk version I still get DevPhysics: APEX Debug Warning: physx::apex::ModuleDestructible::init: Failed to load GRB dll: GRBCHECKED_1_1_api2_x64.dll. Even if the GRB dll is present, the load failure could be caused by a missing dependent dll, such as cudart or physXloader. It seems the .dll written by those guys do the trick. With all the other version i get that warning or the one you got: "DevPhysics: APEX Debug Warning: physx::apex::ModuleDestructible::init: GRB descriptor parameters not valid. GRB simulation not initialized."

    Leave a comment:


  • replied
    I really don't know the answer to this question as I haven't played with Apex since I originally posted this thread and even then I didn't have a clue what I was doing. However, the error reads "GRB (GPU Rigid Body I'm guessing) descriptor parameters not valid.
    I would think that an error claiming that parameters are invalid would mean that something is configured incorrectly in your rigid body's properties.

    Leave a comment:


  • replied
    In the November 2012 build I can't enable GPU Rigid Bodies. I turned on the settings in the ini files and I see this confirmation in the log:

    "Log: PhysX GPU Support: ENABLED"

    but I also see the following warning in the log:

    "DevPhysics: APEX Debug Warning: physx::apex::ModuleDestructible::init: GRB descriptor parameters not valid. GRB simulation not initialized."

    Question: Are GPU Riged Bodies working in the November build, or am doing something wrong?

    Leave a comment:


  • replied
    Ok cool. Again, thank you for the info. This is obviously my first test with Apex and I just left everything at the default settings. Good to know that you can use LOD and control the max chunks. I'll have to play around with the settings for the debris and make it so the bits fade more quickly etc.

    Leave a comment:


  • replied
    TorQueMoD
    So would a scene like the Art Gallery destruction demo be possible to run on a 360?
    Not with same amount of active rigid bodies as in this video. But if you reduce maximum number of chunks to 100-200 - yes. Level will remain fully destructible, just there won't be debris scattered all over the floor (APEX will remove existing chunks automatically to create new ones, taking their size and distance from camera into account).

    And can Apex be used to create the amount of destruction that you see in a game like RF:G
    Have you played this game actually ? They are always keeping amount of rigid bodies to minimum using some tricks (smaller pieces are falling through level geometry or dissapearing after a few seconds, others are not interacting with each other, and only biggest chunks have full collision) - so no "magic" here.

    I think APEX D can not be used to fully reproduce Guerilla style destruction currently - it is missing some features, like static stress calculation or detailed collision filtering settings.

    Leave a comment:


  • replied
    Thank you for all of the info. I'll have to ask my buddy what his CPU is, but mine is an intel QX6850 3.0 ghz Quad Core.
    So would a scene like the Art Gallery destruction demo be possible to run on a 360? And can Apex be used to create the amount of destruction that you see in a game like RF:G

    and also run smoothly on consoles?

    Or should it really only be used sparingly?

    And thanks for the help with the PhysX account

    Leave a comment:


  • replied
    TorQueMoD
    Ok, I'm a little confused. It was my understanding that both PhysX and Apex were rendered on the GPU to help free up the CPU to perform other task
    Well, there is no short story here.
    PhysX SDK (all UE3/UDK physics is based on it, from vehicles to ragdolls, except for character controller) is basically multi-platform physics engine, like Havok, and it is used in many games like Gears of War, Mass Effect, Bulletstorm, etc (and 330+ released games in total).

    Now, PhysX SDK can accelerate certain calculations - particles/fluids and cloth - on GPU (supported in UE3). GPU acceleration of Rigid Body physics (GRB - GPU Rigid Bodies) is yet experimental technology, supported only by APEX Destruction 1.1 module.

    PC versions of certain games (like Batman: Arkham City/Asylum, Alice 2, Mirror's Edge) contain special physics effects (lots of physical particles, tearable cloth, etc), which are taking advantage of GPU acceleration feature - NVIDIA is using them as marketing feature to sell more GPUs.

    To sum: GPU acceleration - not that big deal and not main feature of PhysX engine, actually.
    Current PhysX SDK 2.8.4.6, integrated in UDK, is compiled with SSE2, supports multi-threading and is more CPU friendly than you might think.

    I could be wrong, but I thought that Apex Destruction is run on your GPU
    GRBs are supported only by APEX 1.1, which is integrated only in Feb 2012 UDK, but is not functional yet. Explained in this article
    http://physxinfo.com/news/7438/febru...x-1-1-sort-of/

    Technically speaking the Apex Destruction runs on my friend's computer, but like I said, he lags to heck once he shoots more than 4 objects
    Your level
    http://www.youtube.com/watch?v=t2luVWGdqEU
    looks pretty intense with lots of object and chunks. What your CPU and CPU of your friend ?

    whereas my computer can run it smooth as silk (nvidia card)
    You sure it is thanks to NV card ? Set PhysX to CPU in drivers - you should see same "silk"
    Not to mention that GPU PhysX support is disabled in UDK by default

    They say on the developer page that Apex Destruction will work on a 360 (which runs a version of a radeon) but will it run with full capability
    Of course it won't. PC + GPU can handle around 7000 - 10 000 simultaneosly simulated chunks, while XBox 360 around 100.

    That's when APEX LOD system can be used. You can author your assets once, and than simply control amount of maximum physical objects on the scene using
    ApexDestructionMaxChunkIslandCount (ini file)
    or
    ApexDestructibleMaxChunk (Kismet)

    50-100 for consoles, 200-300 for low-end PC, 400-600 for High-end PC

    P.S. I remember you.. we helped you to fix your PhysX dev account

    Leave a comment:


  • replied
    Originally posted by Zogrim View Post
    TorQueMoD

    GPU acceleration of what ? Physics ? No, never heard of it
    Ok, I'm a little confused. It was my understanding that both PhysX and Apex were rendered on the GPU to help free up the CPU to perform other tasks. That's why in games like Arkham Asylum you don't get the extra effects if you're running a Radeon card (as PhysX is proprietary) http://www.youtube.com/watch?v=luSAnouAFJs
    Also to quote the wikipedia article on PhysX... "Modern GPUs are very efficient at manipulating and displaying computer graphics, and their highly parallel structure makes them more effective than general-purpose CPUs for a range of complex algorithms, such as accelerating physical simulations using PhysX"

    I could be wrong, but I thought that Apex Destruction is run on your GPU so if you don't have an Nvidia card, you can't run more than a few simulations before things get bogged down because they're essentially running in "software mode" without an Nvidia card. They say on the developer page that Apex Destruction will work on a 360 (which runs a version of a radeon) but will it run with full capability (IE this level of detail http://www.youtube.com/watch?v=9lCkB77it-M)?

    Technically speaking the Apex Destruction runs on my friend's computer, but like I said, he lags to heck once he shoots more than 4 objects whereas my computer can run it smooth as silk (nvidia card) and its specs are around the same as his if not worse.

    Leave a comment:


  • replied
    TorQueMoD
    I would imagine that the UDK fracture tool uses your GPU for acceleration
    GPU acceleration of what ? Physics ? No, never heard of it
    (PhysX SDK does not support GPU acceleration for rigid bodies, only GRB module inside APEX 1.1 can do it).

    Apex really any faster/better?
    APEX Destruction is further evolution of PhysXDestructibles system, which was better than UDK Fracture already.
    http://udn.epicgames.com/Three/PhysX...Reference.html

    Different fracture patterns, support system, destructibles that can be dynamic objects, hierarchical fracturing, smart LOD system, impact damage, etc

    Not to mention
    "The FracturedStaticMeshActor is an efficient way to generate small levels of destruction within a UE3 level. However, if you wish to scale up the amount destruction, the FracturedStaticMeshActor will soon reach some limitations. For one thing, every piece (or conglomorate) that gets ejected is represented by an AActor. If hundreds of pieces are ejected, the AActor overhead can be quite large. "

    But for low scale destruction UDK Fracture will fit better, probably.

    my test demo using Apex on his 5400HD card and after shooting 4 objects the game completely stutters
    And how many chunks those object have ? What is resource budget ?
    If you are spawning 200-300 rigid bodies from each destroyed object and not removing them, it will lag, especially on low-end CPU (his GPU does not matter really).

    Would Apex run on the PS3 for example?
    Of course it would (on Cell CPU). Not at scale that is on PC, however.
    That's why you have different depths of fracture inside Destructible assets - you can have only coarse fracture on consoles by disabling lower depths.

    Leave a comment:


  • replied
    Interesting. Though without GPU acceleration would be the results that my friend with a Radeon got where after shooting 4 objects, the frame rates crawl. If you were trying to create a game with Red Faction Guerilla style destruction without acceleration it would never work. Anyone know any pros to using the UDK Fracture system?

    Leave a comment:


  • replied
    from nvidia developer zone:
    APEX supports Xbox 360, PS3, and Windows PC (with or without GPU acceleration).

    Leave a comment:


  • replied
    Right sorry. UDK won't export to PS3 or 360 but if you get an engine license then UE3 will. Its something to consider for any project that might want to start on the PC and then upgrade and port to the consoles later. If you build your entire game around Nvidia Apex PhysX and its not supported by one of the consoles, then it'd be a huge problem. Would Apex run on the PS3 for example? Its an nvidia based video card, but is it powerful enough and does anyone know if its possible to get it to work somehow with a software update?

    Leave a comment:


  • replied
    Well, for starters, UDK will not export your game to PS3 or XBOX360, so just worry about pc's, mac's, and ios for now.

    Leave a comment:


  • started a topic Nvidia Apex vs UDK Fracture

    Nvidia Apex vs UDK Fracture

    Hey all,

    So I've been playing around with Nvidia's Apex physics lately and have to say that I absolutely love it, however I've been wondering specifically how it differs to the Fracture tool that comes built into UDK. I would imagine that the UDK fracture tool uses your GPU for acceleration as well so is Apex really any faster/better? Are there disadvantages to using Apex or rather advantages to using the built in fracture tool? (other than Radeon support)
    One major drawback to full supporting Apex in a game would be that it would completely alienate any players who have Radeon cards. My buddy tried to play my test demo using Apex on his 5400HD card and after shooting 4 objects the game completely stutters. Also, would this be an issue on consoles? I don't believe that the PS3 or 360 would support Apex would they?

    What do you guys think?
Working...
X