Jump to content


SwiftShader 2.0


42 replies to this topic

#1 Nick

    Senior Member

  • Members
  • PipPipPipPip
  • 1227 posts
  • LocationOttawa, Ontario, Canada

Posted 02 April 2008 - 03:47 PM

Hi all,

I'm proud to present you SwiftShader 2.0.

Please download the demo and give it a try with every DirectX 9 game you've got. :w00t: Feel free to share your thoughts!

Nicolas

#2 .oisyn

    DevMaster Staff

  • Moderators
  • 1842 posts

Posted 02 April 2008 - 04:17 PM

No SM 3.0? ;)

;)
C++ addict
-
Currently working on: the 3D engine for Tomb Raider.

#3 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 02 April 2008 - 06:22 PM

demos work. can't wait to test it on my quadcore which should be soon arriving. then i'll see if it scales well (from 2x1.2ghz to 4x2.4ghz should be 4x faster :))
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

#4 Nick

    Senior Member

  • Members
  • PipPipPipPip
  • 1227 posts
  • LocationOttawa, Ontario, Canada

Posted 02 April 2008 - 07:00 PM

.oisyn said:

No SM 3.0?
Not yet, sorry. :blush: We chose to instead implement every possible feature expected from a Shader Model 2.x device. With the exception of anisotropic filtering and anti-aliasing I really think it has everything.

It runs Tomb Raider Anniversary by the way. ;)

#5 Nick

    Senior Member

  • Members
  • PipPipPipPip
  • 1227 posts
  • LocationOttawa, Ontario, Canada

Posted 02 April 2008 - 07:05 PM

davepermen said:

demos work. can't wait to test it on my quadcore which should be soon arriving. then i'll see if it scales well (from 2x1.2ghz to 4x2.4ghz should be 4x faster :))
I have an Intel Q6600, and performance is really excellent for playing games like Half-Life 2 and World of Warcraft at modest resolutions and medium quality.

Personally I'm looking forward to the Intel Nehalem and Sandy Bridge architectures (and maybe AMD's Bulldozer will be a leap forward too)... :happy:

#6 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 02 April 2008 - 08:10 PM

it'll be an amazing year, 2009.. both for your work, and for all the ones who like realtime raytracing. cpu's get quickly fast enough for "modest" gaming. that's very nice to see.
i don't like gpu's. they and their drivers are simply something you can never exactly count on. a dll like yours works, and will always (and if not, just use the original dll you got with the game, and it's all fine)
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

#7 imerso

    Senior Member

  • Members
  • PipPipPipPip
  • 434 posts
  • LocationBrasil

Posted 03 April 2008 - 12:33 AM

that is an incredible work, nick. last time i checked SwiftShader i was pretty impressed, it ran very quick!

#8 .oisyn

    DevMaster Staff

  • Moderators
  • 1842 posts

Posted 03 April 2008 - 11:05 AM

Nick said:

Not yet, sorry. :blush: We chose to instead implement every possible feature expected from a Shader Model 2.x device. With the exception of anisotropic filtering and anti-aliasing I really think it has everything.
Is SM3 really that different? Of course, it supports more features and thus you'll have to spend more time implementing and especially optimizing x86 code generation, but is it harder, or undoable even?

Quote

It runs Tomb Raider Anniversary by the way. ;)
:yes:
TRA was prev-gen btw, I don't think it even uses SM2...? Try Tomb Raider: Legend in next-gen mode ;).
C++ addict
-
Currently working on: the 3D engine for Tomb Raider.

#9 Nick

    Senior Member

  • Members
  • PipPipPipPip
  • 1227 posts
  • LocationOttawa, Ontario, Canada

Posted 03 April 2008 - 01:05 PM

.oisyn said:

Is SM3 really that different? Of course, it supports more features and thus you'll have to spend more time implementing and especially optimizing x86 code generation, but is it harder, or undoable even?
No, it's not undoable and not signficantly harder.

It's been two and half years since the first release though, which only supported Shader Model 1.x and had many missing DirectX 8 features. So for SwiftShader 2.0 we aimed at Shader Model 2.0 and supporting practically everything, at full quality. We could have aimed at Shader Model 3.0 but then it was either released later or missing other features.

Furthermore, we're still mainly targetting the casual gaming market, for which Shader Model 2.0 is in most cases already more than they ask for. But we'd like to raise that bar. :happy:

#10 juhana

    New Member

  • Members
  • Pip
  • 2 posts

Posted 07 April 2008 - 03:48 PM

Swiftshader was known as sw-shader. Source codes are here:
ftp://ftp.funet.fi/p...hader-softwire/

Now that we have source codes, the software could be
extended to later shader models, and to DirectX 10.
Continuing the development of the open source version
would be nice.

ShaderX 3 book has an article on sw-shader/Softwire,
for technical doc.

Juhana

#11 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 07 April 2008 - 08:13 PM

can we drop the dll into vista to get aero on devices that haven't? not that it would be very useful, as systems that can't do dx9 are not very fast, thus software rendering isn't the best thing for the full os for them.. but it would be a fun test :)
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

#12 .oisyn

    DevMaster Staff

  • Moderators
  • 1842 posts

Posted 07 April 2008 - 09:15 PM

didn't aero need DX10? This is DX9, with *only* SM2 (sorry Nick :))
C++ addict
-
Currently working on: the 3D engine for Tomb Raider.

#13 Nick

    Senior Member

  • Members
  • PipPipPipPip
  • 1227 posts
  • LocationOttawa, Ontario, Canada

Posted 07 April 2008 - 10:05 PM

juhana said:

Swiftshader was known as sw-shader.

Now that we have source codes, the software could be extended to later shader models, and to DirectX 10. Continuing the development of the open source version would be nice.
It's no big secret that swShader was the precursor of SwiftShader. But you should know that there's over four years of developement between the last open-source swShader version and the current SwiftShader release (some part-time, some full-time). In fact practically every component has been rewritten now. So I don't want to discourage you but the swShader source is no more useful than starting from scratch.

It's also hard to find people capable of the right programming skills and having an unending passion about software rendering, who are also willing to dedicate all their free time on it for the next few years without really getting anything back. You might also want to know that during the three years that swShader was open-source nobody contributed any code.

I'd love to know your motivation though. What would you use it for and why open-source?

By the way, assuming you're an existing member, you don't have to register as a new member today just to tell everyone about swShader. ;) I personally don't mind at all talking about it and spreading the LGPL source code.

#14 Nick

    Senior Member

  • Members
  • PipPipPipPip
  • 1227 posts
  • LocationOttawa, Ontario, Canada

Posted 07 April 2008 - 10:12 PM

davepermen said:

can we drop the dll into vista to get aero on devices that haven't?
Direct3D is deeply integrated into Vista as far as I know. So I don't think there's a way to do thiw.

Quote

not that it would be very useful as systems that can't do dx9 are not very fast, thus software rendering isn't the best thing for the full os for them..
I beg to differ. My girlfriend has a laptop with a relatively powerful 1.8 GHz Pentium M but an IGP with only Direct3D 8 support. There's also lots of systems with still respectable graphics cards like the GeForce 4 which don't support Shader Model 2.0. Compared to games Aero also doesn't look that intensive. Note that SwiftShader scales quite well to higher resolutions thanks to improved cache coherency and such.

#15 Nick

    Senior Member

  • Members
  • PipPipPipPip
  • 1227 posts
  • LocationOttawa, Ontario, Canada

Posted 07 April 2008 - 10:15 PM

.oisyn said:

didn't aero need DX10? This is DX9, with *only* SM2 (sorry Nick ;))
No. Aero requires a Vista Premium Ready PC: "Support for DirectX 9 graphics with a WDDM driver, 128 MB of graphics memory (minimum), Pixel Shader 2.0 and 32 bits per pixel."

#16 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 07 April 2008 - 10:23 PM

aero needs dx9. having dx10 means for more hw support especially for textrendering, and more finegrained required rendertask switching (great for always fluid gui rendering while running one, two, or even more gpu intensive tasks at the same time). dx11 is then a fully multithreaded gpu which can switch threads per pixel..

or something like that :)


sure, nick, using swiftshader, it would allow aero for your girlfriends notebook. but the additional workload on the cpu would hurt her notebook experience quite a bit, i'd guess (fan more often on, battery lasts less). that's what i ment with "not very useful". it would be nice anyways, as it would allow to run vista on anything pre dx9.

i'm glad i have a system which soon gets dx10 drivers :) having a low end system with an intel integrated now gives me the chance to use dx10 soon on it, just with a driver update. it took some time (and i didn't knew/cared that my notebook can do dx10 at all), but i won't say no :)
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

#17 .oisyn

    DevMaster Staff

  • Moderators
  • 1842 posts

Posted 07 April 2008 - 11:23 PM

Ah ok :)
C++ addict
-
Currently working on: the 3D engine for Tomb Raider.

#18 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 07 April 2008 - 11:39 PM

it's the other way round, dx10 can not be backported to xp. but vista can happily run any version (and starting ps2.0, it supports aero)

and anyone wanting to argument about dx10 on xp should first read up on what dx10 really is about and why this doesn't work on xp (start: wikipedia:))

(i just want to note that it's very late here, i'm tired and lying in bed since 3 days now because of a damn flue. so take all of this with a lot of salt...)
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....

#19 .oisyn

    DevMaster Staff

  • Moderators
  • 1842 posts

Posted 08 April 2008 - 08:44 AM

davepermen said:

it's the other way round, dx10 can not be backported to xp. but vista can happily run any version
I know that. I just thought Aero itself needed DX10.
C++ addict
-
Currently working on: the 3D engine for Tomb Raider.

#20 davepermen

    Senior Member

  • Members
  • PipPipPipPip
  • 1306 posts

Posted 08 April 2008 - 10:38 AM

luckily not :) would reduce the amount of users having aero by a big amount...
davepermen.net
-Loving a Person is having the wish to see this Person happy, no matter what that means to yourself.
-No matter what it means to myself....





2 user(s) are reading this topic

0 members, 2 guests, 0 anonymous users