Oblivion Graphics Extender, Thread 11

Post » Fri Apr 23, 2010 11:46 pm

Fair enough. I did some testing yesterday with the obge.ini. Turning depth buffer off allows screenshots for a few minutes but eventually freezes the game. With depth buffer on taking a screenshot freezes the game instantly. I had this version of Ati Tray Tools installed and working fine together with Oblivion + obge before I installed obge 2.

It's nice to have the ability to take screenshots in another format than the games default bmp. Oh well, there's always some other app floating around somewhere I can use for this.

It could also be that my new card (HD4650) simply needs more system-ram forsome reason. Oh, the wonders of modern technology.
User avatar
sam
 
Posts: 3386
Joined: Sat Jan 27, 2007 2:44 pm

Post » Sat Apr 24, 2010 1:12 am

A quick question for the shader writers. They way the system is set up at the moment any vertex shaders are ignored. Do you want programmable vertex shaders? It'll require a bit of a rewrite to do.
I'd sure like to experiment with them. And I'm pretty sure the others agree with me :)
User avatar
Jessie Rae Brouillette
 
Posts: 3469
Joined: Mon Dec 11, 2006 9:50 am

Post » Fri Apr 23, 2010 9:35 pm

From what I can tell, the loadShader call seems to be activating it ( as it should ), but not on my side. I am running a dev. version of the plugin, but I'm pretty sure I got the source right after the beta was released. In any case, I'll put it up on my fork in the GitHub repository soon (once I figure out how to do it properly that is; it's been a long time since I worked with SVN s/w) - I've added a new script command that would return the state of a loaded shader.

Easily done. But it might take awhile to get it right as I have issues with the text input script as it is. To summarize, the next release should (hopefully)have following changes:
. A new cancel button for the variable input menu
. A toggle indicator for the shaders (+ if enabled, - if not)
. A fix for the above issue.


More requests. :) Some of these are repeats of old ones, just making sure they weren't missed:
. Default to all shaders off.
. Changing of vector variables, perhaps detecting commas to separate indices?
. A short readme which just explains input formats (what a boolean is, float is, what keypresses do what, that sort of thing)
. Perhaps change the shader listing to " - ()" to make it clear what is what to even the most ignorant of people?
. Support for the next version of Godrays (probably should work with vtastek on that, he can give you a name, and then you can release them at the same time or something.)
. Changing shaders on horseback (I don't know if you allowed this or not, someone else brough it up)
. Changing shaders from the item when hotkeyed (again, possibly tricky due to a lack of menumode, so not really important - ScreenEffects' ScreenControls managed it though, so maybe that would help)

That's all I can think of for now, for your consideration. Plenty more to come with time. :P

Did you figure out what was causing my error, or is that still a mystery?

Edit: Those people having save/load problems try editing your obge.ini file and changing the line bUseRAWZfix=1 to bUseRAWZfix=0.

A quick question for the shader writers. They way the system is set up at the moment any vertex shaders are ignored. Do you want programmable vertex shaders? It'll require a bit of a rewrite to do.


I don't know if it was really directed at me, but the RAWZFix change didn't solve my re-application bug with the support plugin.

I would love to have programmable vertex shaders, yes. I'm sure there's a lot of effects out there that need 'em, so yes please. :)

Oh, and I'm pretty sure that previously I could alt-tab out of Oblivion and back in again without any problems, but now the game stops responding, as OBGEv2 can no longer find something or other. Not really a big issue for me, but thought you might like to know. If you want more info, just ask.

Fair enough. I did some testing yesterday with the obge.ini. Turning depth buffer off allows screenshots for a few minutes but eventually freezes the game. With depth buffer on taking a screenshot freezes the game instantly. I had this version of Ati Tray Tools installed and working fine together with Oblivion + obge before I installed obge 2.

It's nice to have the ability to take screenshots in another format than the games default bmp. Oh well, there's always some other app floating around somewhere I can use for this.

It could also be that my new card (HD4650) simply needs more system-ram forsome reason. Oh, the wonders of modern technology.


I use FRAPS to take screenshots, and it works fine. Not sure if that's any help for you, but there's a possible alternative. :shrug:
User avatar
Hannah Whitlock
 
Posts: 3485
Joined: Sat Oct 07, 2006 12:21 am

Post » Fri Apr 23, 2010 10:42 pm

@shadeMe,
thanks for updates, and I must tell, tweaking godrays shader is very hard, but with your plugin I discovered my errors, and best combinations for the shader now. There are two problems though:
You can disable-enable shaders without quitting menu, but updates only appear if you quit the menu. It would save time if changing variables affects instantly or via an apply button, an someway to hide the menu.
The variables read 0, even after changing them.
Those are not very important though, no need to over complicate it.

It's funny, I find the support plugin more useful for developers.
Can make the shader variables update instantly, but if I were to disable the menu right away, you'll end up having to reopen the menu through the token. I'm still looking into the "zero value" issue.

More requests. :) Some of these are repeats of old ones, just making sure they weren't missed:
. Default to all shaders off.
. Changing of vector variables, perhaps detecting commas to separate indices?
. A short readme which just explains input formats (what a boolean is, float is, what keypresses do what, that sort of thing)
. Perhaps change the shader listing to " - ()" to make it clear what is what to even the most ignorant of people?
. Support for the next version of Godrays (probably should work with vtastek on that, he can give you a name, and then you can release them at the same time or something.)
. Changing shaders on horseback (I don't know if you allowed this or not, someone else brough it up)
. Changing shaders from the item when hotkeyed (again, possibly tricky due to a lack of menumode, so not really important - ScreenEffects' ScreenControls managed it though, so maybe that would help)

That's all I can think of for now, for your consideration. Plenty more to come with time. :P

Did you figure out what was causing my error, or is that still a mystery?

. Can and will be done.
. OBGE's already got a function to set shader vectors, but I haven't tried it though. Will look into it.
. Noted.
. Possible, but seems unnecessary (IMHO, of course :P). Better to name the shaders more descriptively. In any case, I'll add a description field for each shader that'll get displayed in the variable menu.
. Trivial - Shouldn't be an issue.
. Already fixed (in the current dev. build)
. Can be fixed (restriction placed by CoBL token). Will do.

As for your (and some others' too, apparently) error, not really. Been quite busy with other priorities. The new function can be used to fix it, but right now, I'm having some trouble compiling the plugin's code. It's a minor detail that should be trivial to fix, but I haven't had the time to look into it yet. Hopefully, I'll be able to release both before next week.

I use FRAPS to take screenshots, and it works fine. Not sure if that's any help for you, but there's a possible alternative. :shrug:
I haven't rigorously tested it, I've noticed it to miss now and then. The ENB wrapper however catches all screenshot keypresses.
User avatar
Amy Siebenhaar
 
Posts: 3426
Joined: Fri Aug 10, 2007 1:51 am

Post » Sat Apr 24, 2010 6:08 am

ENB wrapper? Google turns up some stuff I'm not sure I wanna mess with.
User avatar
Jacob Phillips
 
Posts: 3430
Joined: Tue Aug 14, 2007 9:46 am

Post » Fri Apr 23, 2010 8:29 pm

I can probably add a screenshot taking function to OBGE. I could even add a script function to save a screen shot to a dds file which can then be loaded in by a shader. I can't think of a valid reason why you'd want to do this but it's possible.
User avatar
Harry-James Payne
 
Posts: 3464
Joined: Wed May 09, 2007 6:58 am

Post » Sat Apr 24, 2010 4:40 am

@ Wrinklyninja

Removing those .fxs didn't seem to help any. You wouldn't know why the crashing is occuring? I have no problem with anything until I put that OBGEv2.dll file back in the plugins folder.
User avatar
Ronald
 
Posts: 3319
Joined: Sun Aug 05, 2007 12:16 am

Post » Fri Apr 23, 2010 2:32 pm

I can probably add a screenshot taking function to OBGE. I could even add a script function to save a screen shot to a dds file which can then be loaded in by a shader. I can't think of a valid reason why you'd want to do this but it's possible.


I can think of a PERFECT reason why you'd want to do that:

Because it's cool.
User avatar
Ellie English
 
Posts: 3457
Joined: Tue Jul 11, 2006 4:47 pm

Post » Sat Apr 24, 2010 5:40 am

@ Wrinklyninja

Removing those .fxs didn't seem to help any. You wouldn't know why the crashing is occuring? I have no problem with anything until I put that OBGEv2.dll file back in the plugins folder.


Nope. Have you tried Scanti's suggestion of disabling the RAWZFix in the obge.ini?

I can think of a PERFECT reason why you'd want to do that:

Because it's cool.


Unfortunately not true. The rule of cool does not hold where its application would result in significantly more work being done. :P

I can't think of a valid reason for the .dds thing, but I do think that the ability to screenshot straight into jpeg would be quite nice, if it's not too much work.
User avatar
IM NOT EASY
 
Posts: 3419
Joined: Mon Aug 13, 2007 10:48 pm

Post » Fri Apr 23, 2010 5:16 pm

Yep, I agree.
User avatar
Scarlet Devil
 
Posts: 3410
Joined: Wed Aug 16, 2006 6:31 pm

Post » Sat Apr 24, 2010 4:57 am

Okay installed to the folders then i get this weird issue in my game.. The support plugin item starts to rise very quickly in duplicates. and here are some screenshots.

http://i187.photobucket.com/albums/x303/HolyDeath3000/Oblivion2010-03-0418-55-57-24.jpg

http://i187.photobucket.com/albums/x303/HolyDeath3000/Oblivion2010-03-0418-56-07-04.jpg

http://i187.photobucket.com/albums/x303/HolyDeath3000/Oblivion2010-03-0418-56-12-32.jpg

http://i187.photobucket.com/albums/x303/HolyDeath3000/Oblivion2010-03-0418-56-19-65.jpg
User avatar
no_excuse
 
Posts: 3380
Joined: Sun Jul 16, 2006 3:56 am

Post » Sat Apr 24, 2010 12:36 am

The nexus file manager is quite intuitive - You shouldn't have any issues with it. As for the above error, I wager a guess that you aren't using OBSE 18b6 (needs to be mentioned in the OP). At least that's what the error would imply.



You need OBSE ver 18b6??? Okay maybe thats my issue. B/c i get that repeated script too which caused the items to duplicate at massive rate.

Edit: Okay got it to work damn that kills pc unlike anything. And I have very powerful machine. That was issue and it made it possible for me to go into the configuration menu too... Which i couldnt do before. Okay for those who have that item replicate glitch make sure your OBSE is updated to highest beta. Otherwise it wont work in game.
User avatar
Romy Welsch
 
Posts: 3329
Joined: Wed Apr 25, 2007 10:36 pm

Post » Fri Apr 23, 2010 10:23 pm

I've got the http://dl.dropbox.com/u/519253/vertexshader.jpg to work. It took me all day. I found out in the end that the reason it wasn't working was that I forgot to turn off culling. (The renderer was throwing away the screen quad because it was outside the clipping plane).

Here's the code I used for the above effect:

texture thisframe;sampler currentFrameSampler = sampler_state{	texture = ;};struct VSOUT{	float4 vertPos : POSITION;	float2 UVCoord1 : TEXCOORD0;	float2 UVCoord2 : TEXCOORD1;	float2 UVCoord3 : TEXCOORD2;	float2 UVCoord4 : TEXCOORD3;};struct VSIN{	float4 vertPos : POSITION0;	float2 UVCoord : TEXCOORD0;	};VSOUT FrameVS(VSIN IN){	VSOUT OUT = (VSOUT)0.0f;	// initialize to zero, avoid complaints.	OUT.vertPos = IN.vertPos;	OUT.UVCoord1 = IN.UVCoord;	OUT.UVCoord2 = ((IN.UVCoord-0.5)*0.9)+0.5;	OUT.UVCoord3 = ((IN.UVCoord-0.5)*0.8)+0.5;	OUT.UVCoord4 = ((IN.UVCoord-0.5)*0.7)+0.5;		return (OUT);}float4 Test(VSOUT IN) : COLOR0{				float4 sample=tex2D(currentFrameSampler,IN.UVCoord1);		sample=sample+tex2D(currentFrameSampler,IN.UVCoord2);		sample=sample+tex2D(currentFrameSampler,IN.UVCoord3);		sample=sample+tex2D(currentFrameSampler,IN.UVCoord4);				sample=sample*0.25;			return(sample);}technique t0 {	pass p0	{		VertexShader = compile vs_1_1 FrameVS();		PixelShader = compile ps_2_0 Test();	}	}


Pretty cool. :)
User avatar
Kayla Bee
 
Posts: 3349
Joined: Fri Aug 24, 2007 5:34 pm

Post » Fri Apr 23, 2010 3:36 pm

:woot:

I digress.

:ahhh:
User avatar
Sarah Edmunds
 
Posts: 3461
Joined: Sat Jul 08, 2006 8:03 pm

Post » Fri Apr 23, 2010 10:28 pm

After some testing, I can see godrays but the effect is so small. Is there anyway to Ramp up the Intensity to Lord of the Rings Movie Levels?

Also for some reason the OBSE Support Plugin while obviously working (I see all the effects turned on when its enabled and its loaded Last in my Load order) Does NOT put a item in my inventory for some reason. Is there a way to fix this or a item code I could input for the thing?

thanks for any help
User avatar
Micah Judaeah
 
Posts: 3443
Joined: Tue Oct 24, 2006 6:22 pm

Post » Fri Apr 23, 2010 7:31 pm

I don't know where I should put this, so I'll start here... when I use OBSE 18 beta 4 all my shaders work great... when I upgrade to OBSE 18 beta 6 I get a weird cell shader look on everything on the screen... does this have anything to do with the shaders, or OBSE (or should I report it at all?)....

Thanks for reading, Mcfinnie
User avatar
Breautiful
 
Posts: 3539
Joined: Tue Jan 16, 2007 6:51 am

Post » Sat Apr 24, 2010 1:00 am

You need OBSE ver 18b6???


I must have missed that. I'll add the requirement to the OP and the support plugin description field at Nexus.

I've got the http://dl.dropbox.com/u/519253/vertexshader.jpg to work. It took me all day. I found out in the end that the reason it wasn't working was that I forgot to turn off culling. (The renderer was throwing away the screen quad because it was outside the clipping plane).

Here's the code I used for the above effect:

texture thisframe;sampler currentFrameSampler = sampler_state{	texture = ;};struct VSOUT{	float4 vertPos : POSITION;	float2 UVCoord1 : TEXCOORD0;	float2 UVCoord2 : TEXCOORD1;	float2 UVCoord3 : TEXCOORD2;	float2 UVCoord4 : TEXCOORD3;};struct VSIN{	float4 vertPos : POSITION0;	float2 UVCoord : TEXCOORD0;	};VSOUT FrameVS(VSIN IN){	VSOUT OUT = (VSOUT)0.0f;	// initialize to zero, avoid complaints.	OUT.vertPos = IN.vertPos;	OUT.UVCoord1 = IN.UVCoord;	OUT.UVCoord2 = ((IN.UVCoord-0.5)*0.9)+0.5;	OUT.UVCoord3 = ((IN.UVCoord-0.5)*0.8)+0.5;	OUT.UVCoord4 = ((IN.UVCoord-0.5)*0.7)+0.5;		return (OUT);}float4 Test(VSOUT IN) : COLOR0{				float4 sample=tex2D(currentFrameSampler,IN.UVCoord1);		sample=sample+tex2D(currentFrameSampler,IN.UVCoord2);		sample=sample+tex2D(currentFrameSampler,IN.UVCoord3);		sample=sample+tex2D(currentFrameSampler,IN.UVCoord4);				sample=sample*0.25;			return(sample);}technique t0 {	pass p0	{		VertexShader = compile vs_1_1 FrameVS();		PixelShader = compile ps_2_0 Test();	}	}


Pretty cool. :)


This is so awesome that I got out of bed, where I was looking at the thread on my phone, into my cold room to switch on my laptop not 4 feet away so that I could get a proper look at the screenshot and code and type this reply easier. That's how awesome. Smileys can't do it justice. :)
User avatar
Brandon Bernardi
 
Posts: 3481
Joined: Tue Sep 25, 2007 9:06 am

Post » Fri Apr 23, 2010 3:29 pm

I've got the http://dl.dropbox.com/u/519253/vertexshader.jpg to work. It took me all day.
Pretty cool. :)



Yes, it is :D
Thank you very much scanti :foodndrink:
User avatar
hannah sillery
 
Posts: 3354
Joined: Sun Nov 26, 2006 3:13 pm

Post » Sat Apr 24, 2010 1:53 am

...
This is so awesome that I got out of bed, where I was looking at the thread on my phone, into my cold room to switch on my laptop not 4 feet away so that I could get a proper look at the screenshot and code and type this reply easier. That's how awesome. Smileys can't do it justice. :)


It's gotten to the point where at LEAST half the time, whenever you maths folks say "that's so cool" I just accept that you're right without really knowing why. There's a reason I filled my schedule with histories and languages. But, really... why is that screenshot so cool? Just, um... just asking. Please don't hate me. :embarrass:

[EDIT] And get rid of your internet phone. Mine is the bane of my existence. There are days, if I don't have class, that I'll stay in bed until four in the afternoon, because I have the internet right there. No reason to get up. Eating's for fat people.
User avatar
Shannon Marie Jones
 
Posts: 3391
Joined: Sun Nov 12, 2006 3:19 pm

Post » Fri Apr 23, 2010 4:01 pm

It's gotten to the point where at LEAST half the time, whenever you maths folks say "that's so cool" I just accept that you're right without really knowing why. There's a reason I filled my schedule with histories and languages. But, really... why is that screenshot so cool? Just, um... just asking. Please don't hate me. :embarrass:

[EDIT] And get rid of your internet phone. Mine is the bane of my existence. There are days, if I don't have class, that I'll stay in bed until four in the afternoon, because I have the internet right there. No reason to get up. Eating's for fat people.


But I love my phone... Nah, I only use it on the move and during dull moments mostly. I was actually checking my emails for updates on my work when I got sidetracked. I don't think I'm in danger yet. :)

It's so cool, because vertex shader do things on every vertex on the screen (a vertex is a corner of a shape, like a triangle as 3 vertices), and that means that you get far less caculations done by the shader as opposed to the pixel shader, which operates on pixels (not really, you can get samples from areas smaller than a pixel actually), of which there are about 1.3 million + of, so there's pretty much always more pixels than vertices on screen.

Also, since vertex shaders act directly onto stuff, rather than what stuff is represented as on your screen (like changing the colour of a chair, rather than the pixels that represent the chair on screen), they're a lot more powerful for certain effects, and they're very useful for lighting in general, and for stuff like procedural grass IIRC. They also get processed before pixel shaders, so you can do stuff in a vertex shader, and pass it along to a pixel shader for further work.
User avatar
Sam Parker
 
Posts: 3358
Joined: Sat May 12, 2007 3:10 am

Post » Fri Apr 23, 2010 8:52 pm

So, what kind of experimentation can we see coming from the team in the next few weeks? In what ways will my Oblivion game be better? Sorry if I'm putting you on the spot here... I've been posting like a madman tonight... I just keep wanting to know things :P
User avatar
lucile davignon
 
Posts: 3375
Joined: Thu Mar 22, 2007 10:40 pm

Post » Fri Apr 23, 2010 4:59 pm

So would that mean a SSAO shader that's not so hard on the GPU?
Sorry if what you said is in no way connected to what I just said, just really hoping to use SSAO sometime ^_^

Ravin
User avatar
IM NOT EASY
 
Posts: 3419
Joined: Mon Aug 13, 2007 10:48 pm

Post » Fri Apr 23, 2010 10:30 pm

I am investigating Oldoblivion project for a couple of days now, I am kinda trying to make the same to Morrowind, but for increasing quality. I found how to disassemble shaders, but no success so far for recompiling them. I can use some help on that.

I think we can have a look at Oblivion's original shaders too. They are ASM but we can do something with them. Beginning with increasing water refraction index and get rid of the thick underwater fog. According to my shader knowledge as long as you know what enters the shader, between output and input, you are free...
User avatar
Alexis Estrada
 
Posts: 3507
Joined: Tue Aug 29, 2006 6:22 pm

Post » Sat Apr 24, 2010 6:47 am

The Oblivion Graphics Extender is an OBSE plugin created by Timeslip that adds extra functionality to Oblivion's scripting language, focussed on the implementation and manipulation of graphics effects. It adds support for fullscreen shaders and extra HUD elements, provides information about graphics memory and screen resolution and allows you to clear some of oblivions textures from graphics memory.

You can get OBGE http://timeslip.chorrol.com/obge.html. The original was found to sometimes cause a crash on transition, and an attempt to fix this was made, in the form of a debugged version, found http://www.tesnexus.com/downloads/file.php?id=25912.


The link, in the openings tread, to the original OBGE v01 source has become invalid. I assume (timeslip) took down his site.

The link, to my TesNexus page where I uploaded the (OBGE v01 Original) and the (OBGE v01 Debugged) version is still on, should I keep it up or should I take it down as well?
User avatar
Louise Lowe
 
Posts: 3262
Joined: Fri Jul 28, 2006 9:08 am

Post » Sat Apr 24, 2010 2:37 am

The link, in the openings tread, to the original OBGE v01 source has become invalid. I assume (timeslip) took down his site.
......

Timeslips new site
http://timeslip.users.sourceforge.net/

with awesome news!!!
User avatar
Kaley X
 
Posts: 3372
Joined: Wed Jul 05, 2006 5:46 pm

PreviousNext

Return to IV - Oblivion