Search Home Members Contacts
About Us
Products
Downloads
Community
Support
Pages: [1]
  Print  
Author Topic: Rainweaver.Common Library (.NET)  (Read 984 times)
Raine
Customers
Community Member
*****
Posts: 1190


« on: March 25, 2008, 06:18:06 PM »

Rainweaver.Common Library - .NET 3.5

Note
The library is not finished as of now, however you can still reuse
the structures contained.

Features
The Rainweaver.Common library contains an Input Manager, some commonly used
structures and a simple class containing two extension methods to store and
restore render surfaces.

InputManager
Call InputManager.Initialize supplying your render/main form, then attach
your events to the delegates you can find under the Rainweaver.Common.InputManager
class. Remember to Terminate the InputManager once you're about to close
your application. Check also the Mouse and Keyboard class.
Remember that right now you cannot change the form you're hooking to once it's set.

Structures
Some structures I've used for Darkmana and my user interface. They're inspired
by the .NET BCL, the main difference is that they use System.Single instead of
System.Int. You will find Rect, UVCoords, Point, Insets and Size. Common operators
and methods are already included. They're fairly self-describing, besides the
Rect.Scale method, which is a mysterious entity. Tongue

RenderSurfaceManager
Initialize the RenderSurfaceManager only if you mean to use the Store and Restore
extension methods, which you can use with TVRenderSurfaces.

Known Bugs
I have finished writing the input manager today and I'm sure I've missed something
here and there, either last minute bugs or things I've completely overlooked.
Please either PM me on the TV3D forums (RaineC) or post in the library thread.
Feedback and constructive criticism are always appreciated. Smiley

License
This library is free for commercial use. If you use the library, credits to me (Roberto Collina) would be nice and appreciated.

Download link: http://www.mediafire.com/?z03vd2suen1
« Last Edit: March 26, 2008, 04:47:22 AM by RaineC » Logged

Zaknafein
Customers
Community Member
*****
Posts: 2674


WWW
« Reply #1 on: March 25, 2008, 07:30:13 PM »

D'oh! .NET 3.5... I still use 2.0!
But I did take a look at it in the ol' Reflector and it looks nice.
You just taught me that these latest .NET versions have implicit fields when you make a property, that's awesome! Cheesy

The mouse management looks very complete too. I'll give it a try once I finally decide to jump to VS2008.
Logged

zaknafein.
>> the instruction limit : my blog & samples repository! <<
Brac
Customers
Community Member
*****
Posts: 275


« Reply #2 on: March 25, 2008, 07:41:34 PM »

D'oh! .NET 3.5... I still use 2.0!
But I did take a look at it in the ol' Reflector and it looks nice.
You just taught me that these latest .NET versions have implicit fields when you make a property, that's awesome! Cheesy

The mouse management looks very complete too. I'll give it a try once I finally decide to jump to VS2008.

Implicit fields, anonymous classes, extension methods, linq!!! (fast queries on any IEnumerable, yumm)...
3.5 has potential, check it out zak (vs2008 is pretty too)
Logged
Raine
Customers
Community Member
*****
Posts: 1190


« Reply #3 on: March 25, 2008, 08:24:51 PM »

I find myself using a lot of lambda expressions... 3.5 is beyond cool.

D'oh! .NET 3.5... I still use 2.0!
But I did take a look at it in the ol' Reflector and it looks nice.
You just taught me that these latest .NET versions have implicit fields when you make a property, that's awesome! Cheesy

The mouse management looks very complete too. I'll give it a try once I finally decide to jump to VS2008.

Well, I think the best part is the keyboard management, you get localized chars, making user input so much easier.

It's nothing special anyway, it's just taking the WndProc, hijacking it, handling WM_ messages, and spamming events.

Edit: Just realized some events aren't fired, I'll update this asap.
« Last Edit: March 26, 2008, 01:13:22 AM by RaineC » Logged

324
Customers
Community Member
*****
Posts: 65


« Reply #4 on: March 26, 2008, 02:10:03 PM »

Does RenderSurfaceManager supports multi-threading(would be awesome)?
When you try to use two render surfaces in separated threads simultaneously TV crashes?
Logged

The Blog of Greek Game Developers.
www.blog.game-developer.gr/
Raine
Customers
Community Member
*****
Posts: 1190


« Reply #5 on: March 26, 2008, 04:33:32 PM »

I might make it thread safe but rendersurfaces are inherently not thread safe. I for one advise against that, unless you're sure that no other rendering operations happen in a different thread.
Logged

Zaknafein
Customers
Community Member
*****
Posts: 2674


WWW
« Reply #6 on: March 26, 2008, 04:38:14 PM »

Indeed, the problem is not with rendersurfaces, it's with rendering at all. You can't ask the hardware to render in two contexts at the same time, every rendering operation must be mutually exclusive.
Logged

zaknafein.
>> the instruction limit : my blog & samples repository! <<
324
Customers
Community Member
*****
Posts: 65


« Reply #7 on: March 27, 2008, 07:26:47 PM »

Yes, you are both right. How difficult is this to be implemented although?
Logged

The Blog of Greek Game Developers.
www.blog.game-developer.gr/
Pages: [1]
  Print  
 
Jump to:  

Powered by SMF 1.1.3 | SMF © 2006-2007, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks