View Full Version : GLSL now in 10.4 sort of....
Mars_999
2005.04.29, 10:47 PM
Well I just played with Xcode and shader builder at the local reseller. GLSL is now in 10.4 but only works through software rendering... :( I still don't see the shader_language_100 extension as of yet. But the code I through at shader builder ran fine so you can play around with GLSL at least for now, just don't expect to run it in your games I guess, or be optimal speed conditions.
OneSadCookie
2005.04.29, 11:09 PM
wait, you were able to type stuff into the OpenGL shader builder without it crashing?
OMG!
Mars_999
2005.04.29, 11:26 PM
wait, you were able to type stuff into the OpenGL shader builder without it crashing?
OMG!
Yes I am!! ;) Yeah you can select between vertex program, vertex shader, fragment program, ati fragment program, fragment shader. And no crashes!! I even coded up some per pixel lighting quick!!
AnotherJake
2005.04.29, 11:33 PM
GLSL? I hope this isn't a cruel tease... Tease, fine. Cruel, bad.
OneSadCookie
2005.04.30, 12:16 AM
Tiger's software renderer does GLSL. It seems to work OK. OpenGL Shader Builder crashes left right and center, just as always.
AnotherJake
2005.04.30, 12:30 AM
Whew! Sounds like it's just a tease then. This is my first official word, since my copy is still on the way and I don't get dev seeds. I'll take it as good bad news that Shader Builder does GLSL, but doesn't work. :)
wadesworld
2005.05.04, 09:57 PM
I know the hardware vendors are hard at work at it, but I obviously can't talk their plans.
Puzzler183
2005.05.04, 10:11 PM
All of this fuss just makes me happy that my most recent purchase was a PC with a nice graphics card :P
Ingemar
2005.05.05, 03:12 PM
Sad to hear. I had GLSL as my primary plan for learning shader programming. So what should I use then? Some other language? Or should I learn GLSL on the "dark side" and bring it to the Mac once Apple get their act together?
Dan Potter
2005.05.05, 03:50 PM
Well I just played with Xcode and shader builder at the local reseller.
Argh! Wish I could've played with Xcode at the Apple store. :cry: I asked one of the workers if any of the machines had the developer tools installed, and he just gave me a blank look and said "uhh, no" like "what are you smoking?"
Oh well, Tiger coming tomorrow for home... :)
Sucks about the GLSL stuff... I've been wanting to play with that a bit too. And yeah, it seems like Apple is always behind on the 3D support compared to Windows, perhaps due to the non-emphasis on games (or is this just my imagination?). I suspect (hope) that sooner or later they'll turn their guns that direction and will be technologically ahead in 3D once again.
Fenris
2005.05.05, 03:58 PM
The reason that GLSL didn't make full spec in 10.4 is that they had trouble making it fast enough, so they focused on Core Image/Video (since that is what most people will use anyway). So, I'd expect it to be supported in a not-too-distant future.
phydeaux
2005.05.05, 04:24 PM
I still find that the ARB_vertex_program and ARB_fragment_program are still the easiest cross-platform way to get shaders done. You have to write in assembly, but it's incredibly easy.
Other than the obvious advantage of using a high-level language, is there anything you can do in the shader language you can't with the assembler programs?
P.S. Ingemar, you rock.
Puzzler183
2005.05.05, 04:24 PM
Eh, if you really want to learn shaders, get a decent PC and play with FX Composer... It's ridiculously easy to use.
Duane
2005.05.05, 04:28 PM
*cries* :cry: I have to wait till the end of summer for me to get Tiger... (Along with a G5 :D). I was hoping to learn shaders using GLSL... :cry:
Ingemar
2005.05.05, 05:48 PM
Puzzler183, FX Composer is HLSL only, right? I know little about HLSL, but I want GLSL, since it is the open standard and what is likely to be supported on all platforms (eventually). (I assume that HLSL and GLSL are not compatible.) After all, I want to use it for Mac games.
Are there similar tools for GLSL, for Windows or Linux (while I wait for the Mac solution)?
PS: Thanks, phydeaux! :-)
OneSadCookie
2005.05.05, 05:52 PM
You can learn GLSL just fine on Tiger; the software implementation is very good, and surprisingly fast (though as a first release, perhaps not entirely bug-free). I'm sure we'll get hardware acceleration for it soon enough.
The big downer on GLSL is that for hardware acceleration of any kind, it'll require a GeForce FX 5200 or better, or a Radeon 9500 or better. That's still kinda limiting on which Macs support it.
Duane
2005.05.05, 05:55 PM
I think that tiger as a whole is buggy; it was rushed to get it out a long time ahead of Longhorn. Which isn't coming out soon. :D
AnotherJake
2005.05.05, 05:57 PM
I think that tiger as a whole is buggy; it was rushed to get it out a long time ahead of Longhorn.
That's not true. The reason it was rushed out is the same reason all good software companies "rush" a product out -> To get it out. They could spend the next eighteen months chasing down bugs in-house. What would be the point of that? Besides, it's about as stable for an initial release as I've ever seen.
OneSadCookie
2005.05.05, 06:12 PM
ATI has a program called RenderMonkey that can be used for GLSL shader development on Windows -- http://www.ati.com/developer/rendermonkey/
Ingemar
2005.05.05, 06:13 PM
You can learn GLSL just fine on Tiger; the software implementation is very good, and surprisingly fast (though as a first release, perhaps not entirely bug-free). I'm sure we'll get hardware acceleration for it soon enough.
The big downer on GLSL is that for hardware acceleration of any kind, it'll require a GeForce FX 5200 or better, or a Radeon 9500 or better. That's still kinda limiting on which Macs support it.
Then I guess I might start there anyway, but in the long run, nothing worse than a 6600GT will do IMHO. Right now, I have a Mac with a 9800, which is kind of OK, but not a very serious GPU programming card.
I think we will soon see more Macs with GPU programming support. AFAIK, the 6200 is quite modern and with a price tag that fits nicely in low-end.
OneSadCookie
2005.05.05, 06:17 PM
Also, PCI-e only. Apple will have to completely re-vamp their lineup before we see anything like that on this side of the fence.
AnotherJake
2005.05.05, 06:29 PM
Sorry, I'm a bit in the dark on this. What's so great about PCI-e over AGP that they simply cannot offer it otherwise?
OneSadCookie
2005.05.05, 07:17 PM
AGP 8x is "8x" to the card, and "1x" back. PCI-e is "16x" to the card, and "16x" back.
the 6200 is able to skimp on VRAM because of the extra bandwidth offered by PCI-e. It simply wouldn't perform well enough in an 8x machine (and note that Apple's low-end is still 4x).
The 6600 is PCI-e native, though there are 8x versions available. I doubt the next generation of NVidia cards will support 8x. Of ATI's current crop of cards, only the X800 supports AGP. I doubt the next generation of ATI cards will support 8x. Apple has to move on, and soon, or they'll be left behind (again).
Puzzler183
2005.05.05, 07:41 PM
ATI has a program called RenderMonkey that can be used for GLSL shader development on Windows -- http://www.ati.com/developer/rendermonkey/
I've used it and definitely prefer FX composer. Maybe I'm just partial to NVidia :D (I have a GeForce 6800 Ultra from them as well).
And as for Apple getting left behind... When my friend told them they still sold computers with a Radeon 9200, I was quite surprised considering that those were state of the art on PC's about 3 years ago...
AnotherJake
2005.05.05, 10:00 PM
And as for Apple getting left behind... When my friend told them they still sold computers with a Radeon 9200, I was quite surprised considering that those were state of the art on PC's about 3 years ago...
It is a completely normal condition for Macs to lag behind the PC industry in many areas, by years at times. It is also completely normal for Macs to *lead* the PC industry by years in certain areas. Video cards ain't one of them, and never really has been, except for maybe a fleeting moment or two. The graphics acceleration industry on the PC is driven heavily by the gaming industry. The gaming industry doesn't drive spit on the Mac because Stevo never liked the idea of people thinking that Macs are for games. That legacy lives on. Not here at iDG, but I digress.
execomrt
2005.05.06, 08:20 AM
Speaking of OpenGL Shader Builder. The !!ARBvp1.0 OPTION ARB_position_invariant is broken again.
At least, it doesn't crash like it was with MacOS 10.3.0-10.3.5, but now, it simply doesn't render anything in MacOS 10.4
Can someone verifying this ?
Here the simplest and valid shader code :
!!ARBvp1.0 OPTION ARB_position_invariant;
END
I hope it works in hardware acceleration, but in software rendering, it breaks (as well on my Geforce 4MX video card)
ggadwa
2005.05.06, 10:43 AM
I have some big plans for shader support in dim3, but it all depends on GLSL. So, hopefully a point release will enable this on the cards.
I think it will be very interesting to have a folder full of GLSL code, and you just pick them an attach them to textures in dim3, in the GUI editors or with scripts. They will be just like the javascripts, where you can edit them as text files, add more or less of them, etc.
[>] Brian
TomorrowPlusX
2005.05.06, 11:16 AM
What about Cg?
Rather, my question is, will shaders written in Cg work on ATI cards? Or is it an NVIDIA-only thing?
Mars_999
2005.05.08, 12:15 AM
FYI Fx Composer will support GLSL soon enough... on PC. As for now I myself have put off buying a Mac again due to this speed bump, GLSL not hardware supported on Mac, and I really want FBO's... I plan on waiting till Apple get's me a dual 3+ghz with PCI-e, or a G5 PB. GLSL is so cool... I am almost 100% sure with VP/FP you can't do if/else conditional statements as you can with GLSL. Perlin noise built in functions are sweet for procedural texture creation ans such. So as a whole I choose GLSL over VP/FP and I have coded both. But that is my opinion...
brtnrdr
2005.05.19, 06:33 PM
got tiger today an after installing it opened shader builder and copied in a test shader (toon shader) and it worked like a charm (granted in software). very cool until it's implemented on the cards. until then, using my 6600 on my pc. very very cool though.
neverever
2005.05.20, 12:18 AM
Im running 10.4 dev tools on a 2.5ghz G5 and the GL shader builder as OSC put it "crashes left and right". I bought that orange book OpenGL SL by Randi J Rost. Should I just type source in text-edit then copy paste?
OneSadCookie
2005.05.20, 12:20 AM
That's what I've ended up doing, to save myself misery when it crashes. It's still no guarantee of safety -- often it'll crash when you paste. If you're going to be doing a lot of work, it might be best to set up your own app with a "reload shaders" menu item :)
neverever
2005.05.21, 10:21 PM
ack, well I guess thats that. :cool:
kmeson
2005.05.24, 04:04 AM
I'm surprised noone has mentioned nVidia's Cg. It cross compiles to DirectX & OpenGL vertex/fragment programs (although not GLSL). It is very similar to HLSL and is (as far as I know) the only high level cross platform solution.
You can download it here (http://developer.nvidia.com/object/cg_toolkit.html#downloads). With Cg you can target GL_ARB_vertex_program & GL_ARB_fragment_program.
FYI I'm new to Mac dev. Recently picked up a 15" PB w/ 128meg 9700 mobility. Cg is on my list of tools to install next.
Bachus
2005.05.24, 04:26 AM
I'm surprised noone has mentioned nVidia's Cg. It cross compiles to DirectX & OpenGL vertex/fragment programs (although not GLSL). It is very similar to HLSL and is (as far as I know) the only high level cross platform solution.
You can download it here (http://developer.nvidia.com/object/cg_toolkit.html#downloads). With Cg you can target GL_ARB_vertex_program & GL_ARB_fragment_program.
FYI I'm new to Mac dev. Recently picked up a 15" PB w/ 128meg 9700 mobility. Cg is on my list of tools to install next.
The Cg compiler is less than optimal. In fact, it does a pretty terrible job overall. It doesn't always work with every renderer, and the code it generates is pretty awful. Far too many unnecessary swizzles, registers, and instructions. Best to just hand-code assembly for ARB_VERTEX/FRAGMENT_PROGRAM, which is actually quite a bit easier than it seems.
vBulletin® v3.6.8, Copyright ©2000-2008, Jelsoft Enterprises Ltd.