All Pro Football 2K8 Source Code

Collapse

Recommended Videos

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • gamerk2
    Rookie
    • Sep 2007
    • 324

    #16
    Re: All Pro Football 2K8 Source Code

    Originally posted by CM Hooe
    To provide another point about how aged the APF source code is at this point: in video games, there's been a push away from object-oriented design in favor of data-oriented design and entity-component architecture over the past few years. For reasons outside of the scope of this thread, DOD allows for higher peak CPU performance (especially when dealing with tens of thousands of actors on-screen) and more parallelable work. This has become increasingly important since the introduction of consoles with CPUs which can support multiple threads such as the PS4 and XBOX One, and obviously the PS5 and XBOX Series X as well.

    As far as I know, multithreading was possible on the XBOX 360 and PS3 (which APF was built for), but it wasn't nearly as commonly used by console game developers as it is today and the modern machines support it far more readily.
    Not entirely true.

    Games have been using dozens of threads for literally 20 years now. The problem has always been that only a handful do any major amount of work.

    The way games were typically designed, two threads did about 90% of the work. One was the primary game thread, which would run through the various game systems in sequence and manage the overall game state. Each individual system could be made parallel, but the sequence through each system was a sequential operation.

    The second major thread was the GPU rendering thread. GPU rendering was almost always done in one thread due to graphics APIs not have an easy mechanism to allow multiple threads to control the rendering process, which itself was a serial operation. This was a HW limitation that developers could not work around; no matter how fast the rest of the program was, your maximum speed was limited by how fast you could push data to and from the GPU.

    Never graphic APIs (DX12/Vulkan/Rust) make it *much* easier for the developer to split the rendering workload across multiple threads, and more control of the rendering process has been given to the developers. While this in turn causes poor performance when used incorrectly (many early DX12 titles had this issue), it allows the developers to tailor the GPU rendering pipeline to best fit their application.

    There's also been a move away from using one thread to run the game state. Rather then run through game systems sequentially, the big idea nowadays is to run each system in parallel on a separate thread, which allows for a much higher level of parallization [though also making the program more difficult to debug as processing is now non-sequential].

    Regardless, the same *total* amount of work is unchanged, but is now balanced across all cores instead of having just two do 90% of the work. This is why Intel is still slightly faster in games, since their CPU cores have always been powerful enough to handle core-heavy workloads. AMD has had weaker CPU cores, which is why they benefit more then Intel by splitting up the thread workload (even if Intel remains slightly faster in games overall).

    *Is a Software Engineer. I don't work in the gaming industry, but have worked on both ancient (35+ year old code bases) and state-of-the-art embedded systems.

    Comment

    • Ev14
      Rookie
      • Nov 2009
      • 46

      #17
      Re: All Pro Football 2K8 Source Code

      My questions to a APF 2K8 Engineer

      1.Would allowing the user to change the play numbering and associated tags be possible?

      2.I've always assumed that the 3, 5, and 7 step drop back protections in APF are based on a Slide-Gap scheme versus even over and under fronts. With "Alert Calls" like Dual Read, Man, etc. being made by the center (AI) for odd, 4-4, 5-0 fronts. This would be similar to a lot of West Coast playbooks I’ve seen over the years. Am I off-base?

      3.Would allowing the user to put together Audible Protection Packages as a form of method override similar to the Play Audible System be possible?

      4.Would there be any sense to me writing up bug reports for APF 2K8?


      Engineers Response
      Hey. Thanks for your support. Sorry to say that there are certain questions that I am not allowed to answer because the possibility exists that we COULD make another football game (I hope) in the future. But I can say that your assumption in Q2 is correct. Q1 is a lower level system question that I can't answer for you. I don't handle the file system format. I have heard that people HAVE done it though. I can't answer #3 specifically other than to say - my play system allows many possibilities in the future.

      As for #4, comments and reports of issues are ALWAYS welcome.

      Thank you SO much for your support. The series is a major part of my life, so my love for it goes far being just the game itself. But it always brings me up that people are still enjoying it. I wish I could do MORE. If we had it on our WIN64 library, we would have been able to continue to do more with it. But, unfortunately, it was a year too soon.
      Ev14

      Comment

      Working...