- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We are glad to announce the release of the Intel Laptop Gaming TDK (Technology Development Kit)v1.0. This is a free software intended to providing game developers with a one-stop place for accessing platform information to better tune their games for the laptop platforms.
This discussion thread in the mobilized software forum has been created to enable constructivediscussions on the Laptop Gaming TDK, foster ideas that can enhance gaming on laptops and provide an informal support structure for the TDK users.
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
From what is presented in the TDK, here is what I find compelling (and likely to implement in our game):
1. Display current battery life.
2. Display network signal strength.
3. Support for multiple processors.
Although I see the benefit of scaling usage based on the power source, that would require an architecture change expensive enough that it doesn't feel worthwhile. Even games which provide customization of the rendering quality will typically try to render at full speed - they usually aren't designed with run-time throttling in mind.
--------
There are several changes to your sample application that could be made to more accurately demonstrate what you are advocating.
1. Display frame rate for the sample.
2. Cap frame rate at 30fps if you detect that the power source is a battery.
3. Even though the physics in the sample is run in a separate thread, there is no asynchronous operation. There are three alternate implementations that you could provide which would truly support multiple processors:
Easiest (but worst) - Utilize 2 threads for physics rather than 1. Split the number of spheres to update between the two threads. This will allow each CPU to process a portion of the physics asynchronously. Although this would not translate well to a practical implementation for a game (since most objects need to interact with other objects in the scene during collision response), it would at least demonstrate an increase in frame rate for machines with multiple processors.
Better - Reverse the order of operations between render and physics. This will allow the physics code to execute while the graphics device processes queued calls to draw (which will eventually block the UI thread on Present). This translates well into an easy to implement optimization for most games, but will probably not affect the frame rate much for your sample, since your vertex shader is not very expensive to execute. Also, this doesn't exactly demonstrate support for multiple cpu's, it just shows asynchronous operation between the gpu and the cpu.
Best - Maintain two sets of position data for the spheres. At the beginning of each frame copy from the "Live" set to the "Render" set. Execute both Physics thread and Render at the same time, only blocking prior to end of the frame to wait for both to finish. This would demonstrate true multi-processor usage.
Side note: The UI controls & text on the right are rendering partially offscreen, and the application crashes when I toggle the check box at the bottom.
-Isaac Squires
http://www.SiderealFury.com/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Isaac
Thanks for your detailed feedback. We greatly value such constructive feedback as it will help improve our product offering.
We appreciate your feedback on the sample application and I will make sure any issues that you have reported are fixed for our next release. The suggestion for capping frame rate is a great one that I will add to the application. Regarding the processing of physics on two separate threads based on splitting the number of spheres between the threads, while the data is decomposed, the functional decomposition is difficult. since we expect that these spheres are going to be colliding against each other, we will actually create more interdependencies between the 2 threads. One thing that we can consider doing is split the spheres based on which quadrant they are in and allocate each of the quadrants to a thread, thereby reducing the dependency when it comes to collision.
While we can definitely optimize the sample application formulti-core capability, the intention in this application is more to indicate the potential of platform feedback in the app. In this regard, the first and simplest step was to create these "meters" to show the various platform states on the HUD.But the impact of the platform awareness will show better if the game can use these to change states. In the past, game developers designed games to support the variant capabilities of graphics cards (hi-fidelity to low-end graphics). In the future, I expect game developers to design and develop their games for variant platforms. For example, a game that runs well on a desktop might not run as well on a laptop and might be even worse on a UMPC (ultra mobile PC) or on a cellphone, due to various reasons - form factor, power constraints, aspect ratio, graphics capabilities etc. Today, games are designed specifically for a particular type of platform. In future, this probably will not be the case. The expectation would be for the game to scale seamlessly between platforms. The games that can do this well, will be the ones that probably will lead the market for such usage.
If you have any other usage models for such use of platform information, do share with us and we will try to provide infrastructure for such capabilities in our software.
Thanks and happy gaming!!
Satheesh
Disclaimer: All opinions expressed in this post are those of the author and not a representation of Intel's views on this topic.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'm also thinking about some creative ways to handle wireless connectivity loss.
Thank you for hosting today's chat, I found it helpful.
-Isaac Squires
http://www.SiderealFury.com/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thank you to all the participants in the online chat on the 19th. Excellent questions and suggestions for creative uses of the TDK. The transcript has been posted. Take a look and let us know what you think.
http://www3.intel.com/cd/ids/developer/asmo-na/eng/325879.htm
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
thx,
bob
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi Bob
We currently do not have plans to extend it to Linux. Having said that, I don't see any reason why it cannot be extended to linux. Will add this to the list of TODOs for the TDK and follow-up with you if and when we plan to implement the linux version.
Thanks for your comment.
Satheesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
With regard to porting, we recently spoke to one of our othercontacts for the TDK, who agreed that the Laptop Gaming TDK can be ported to Linux* with minimal effort. They said porting to MacOS* is likely also not a problemsince most of theAPIsused are generic, and any Windows*-specific APIs should have an equivalent in MacOS.A Java*-based API should also work.
==
Lexi S. IntelSoftware NetworkSupport

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page