Latest Forum Posts
Arsenal 23/24 season
last post by Snaps
[VIDEO] Star Wars: The Acolyte
last post by Pete-MK
The Responder
last post by admars
Boris the not-a-spider
last post by Jitendar Canth
[VIDEO] Eric
last post by Pete-MK
Duane Eddy RIP
last post by marksparks999
Reviewer Euros Pool anyone?
last post by mbilko
The All New Doctor Who Thread...
last post by Jitendar Canth
How many browsers do you use?
last post by admars
The Speccy reborn
last post by Jitendar Canth
[VIDEO] Star Wars: Ahsoka
last post by Par Mizan

Info and forum posts by 'u-man'

Visit this user's main profile!

Joined on: Friday, 23rd January 2015, 15:14, Last used: Friday, 23rd January 2015, 15:14

Access Level: Mostly Harmless

About this user: This user has chosen not to submit a description :(

This user has posted a total of 13 messages. On average, since joining, this user has posted 0 messages a day, or 0.03 messages a week. In the last 30 days, this user has posted 0 messages, which is on average 0 messages a day.

Recent Messages Posted:

RE: Vector games.... Vector shader? WTF???

Hello Rob,

long time no hear ;) , but i have some good news for you. Jezze brought back HLSL to vector-games. He improved HLSL with over 1300 lines of code, fixing many things and even introducing new parameters. This means you can use any of the HLSL parameters also on vector games: like having a shadowmask for colored vector games, using defocus, RGB gamma, floor parameters on vector games and the new bloom overdrive parameter (this effect allows to overdrive pure colors like red, green and blue to become more brighter).

You can download the latest MAME changes from Jezze here:
https://www.dropbox.com/s/yt0onktgeniaedk/mame64-hlsl-wip_v01.7z?dl=0

I included a StarWars and Asteroids .ini ( paths need to be changed accordingly) with maybe a little exaggerated settings, but they are showing nicely the points, stars, bullets and still keeping the sharpness. I found the defocus and RGB gamma values very useful, to have large beamwidth settings, but keeping the lines still thin. As a result, you have big enough points. Feel free to experiment and maybe give some feedback.

I think that the limit is reached, with what could be done with HLSL or shaders alone. Everything what can be improved now, is left to the vector renderer alone.

I started a thread with many useful infos here: http://forums.bannister.org/ubbthreads.php?ubb=showflat&Number=102065&page=1

which in turn lead to better documentation, to what is needed for further improving: https://github.com/mamedev/mame/issues/399

I have two ideas for the vector renderer, that may be interesting for you:

- a shake/jiggle filter that operate on vertices level, to simulate the "stable" screen of vector games, especially true for the Vectrex system and the cheap hardware used (comparing to arcade vector games).

- due to the nature of the vector renderer, assuming that everything being drawn is a line, a filter would be needed, that treats "true" points (i.e. Stars, Bullets etc) like a special case. So that a point case could be passed to exclusive point fx, like bloom/glow, shading etc.

If you read my thread link above, you will see what the problem is, with the vector renderer and points in vector games. I have the hope, that you could help/contribute something for this task. That would be just awesome.

Thx for reading, u-man

RE: Vector games.... Vector shader? WTF???

First, big thanks for reply and yes, maybe i didnt fully understand the technology behind a vector-tube, thats why i asked you :D , before releasing a guide that everyone will laugh at ;) .

I dont know if those parameters are a post.fx, they are the ones in current MAME distributions, i just need to explain them properly and that was my try to do it. If you take Asteroids as a example, there are things you can observe, like the things I allready explained. The hiscore table on top of the screen for example, where left and right player-score is darker than the mid hiscore. Or all smaller objects in Asteroids, like the smaller rocks, ufos and bullets. I heard from a friend, that brightness is defined by the Z-axis, which sound logical to me, but i dont have any info that can confirm this assumption. It sound plausible, because if i compare 3D-programs or tools, that work with vectors, then all of them also use the Z-Axis. Off course Asteroids is a 2D game, but maybe it uses such a process to achieve that different gradients in color or better B/W said. Bad thing is, i can only observe some games, usually Asteroids and BattleZone and the next date to see them in action is September :( .

The main thing, why I am doing this, is to explain to people, that most presets i have seen are wrong, because everything on the screen is equally bright, which for sure is not right. Most people prefer the AAE emulator, because it has nice glows, but its still not the right representation of the games, because its way to overextended and dont include all the aspects that we talked about here.

My biggest hopes lies in your code which looks very promising (even Jezze said, that your stuff looks nice). Please dont give up your nice work so far.

Greets u-man

RE: Vector games.... Vector shader? WTF???

Hello Rob Shepherd,

i may need your help, as i am writing a shader manual at the moment and i am not 100% sure, if i am right with some of my definitions regarding the vector options and vector games. You seem to be the right person for me to ask, how those games "really" work.

I just copied the text that needs your expert look:

#
# VECTOR POST-PROCESSING OPTIONS
#
vector_length_scale 0.8
vector_length_ratio 40.0

vector_length_scale (0.00-1.00)

determines how much length affects vector fade.

vector_length_ratio (0.000 – 1000.000)

affects the vector fade length (4.0 - vectors fade the most at and above 4 pixels, etc.)

"These two parameters will likely look different on nearly all vector-based games, as they depend on the size of the presented vector-objects and if it is a “true” 3D game or if it is a 2D based game. The parameters makes the most sense on 3D based games and are creating a “more depth” effect for vectors that are aligned on a Z-axis.

To fully understand them, I recommend a game like Speed Freak.

However there are still some 2D games like Asteroids for example, that also use vectors on the Z-Axis, even if it is a 2D game. A good example for this, is the score table on the top of the Asteroids screen. The left and right player scores appear darker than the middle hiscore, which shines brighter, even if they are nearly the same in size.

Then there is the vector beam itself, which draw i.e. bigger asteroids darker, because they are drawn more far away from the viewers POV. Smaller asteroids or objects like the small ufo, are drawn much brighter, as the beam is to close to adjacent vectors to make a fade visible. Most presets I have seen, does not consider this fact, resulting in “wrong and equally bright” vectors in game appearance."

Any help on this would be nice.
Many thanks in advance, u-man

This item was edited on Friday, 26th June 2015, 12:00

RE: Vector games.... Vector shader? WTF???

I didnt know of a global vector driver... noob as I am :) , so this is some kind of a vector-renderer that MAME use, i guess. This are very good news, as MAME and MESS have merged in v0162. I always thought, vectors would be treated independently for every system/console.

Quote:
Rob Shepherd says...
The vector display driver uses line primitives to draw lines, so already has options for increasing the thickness. Also there is no way that I can see in which a post-processing filter could determine which is the start and which is the end of a line.

So it has to be sprites.
Sounds very logical to me . I think with "thickness", Timothy meant something like the current vector_length_ratio and not the overall thickness of lines, but you are right, there would still be the problem with the start/end of a line. No problem at all with sprites, as long as they dont look like the ones in the old AAE-Emulator.

Quote:
Rob Shepherd says...
"That's an interesting idea, the Vectrex has a terrible cheap vector monitor in it which jiggles a lot. Should be easy to add, I can do that once I get it working in the newer MAME cores and looking how it did in the previous one."

That would be awesome. Some people and friends told me, that even with original arcade hardware, some jiggle could appear, depending on the condition of a cab, chassis, tube  etc.

I think these two things alone (point-shader, jiggle), would be great additions to vector based games.

Quote:
Rob Shepherd says...
""You are not alone outthere ""
Sounds like X-Files, but its true ^^. If you need something special on the HLSL side to get your work done, let me know it.

PS: your posted picture looks really nice... a little glow and it would be perfect.

This item was edited on Saturday, 13th June 2015, 15:23

RE: Vector games.... Vector shader? WTF???

Yeah... nice to see your progress and that was, what i meant with point-shading. Ok, must admit that i didnt realize that points are only on one end of a line, but you are right, just checked yesterday.

You should really look into v.0162, there where over 30 improvements, comparing to old HLSL. You want to remove the "dim", these settings could help (assuming you use v.0162) :

#
# BLOOM POST-PROCESSING OPTIONS
#
vector_bloom_scale 1.00
raster_bloom_scale 0.33
bloom_lvl0_weight 1.00
bloom_lvl1_weight 0.16
bloom_lvl2_weight 0.24
bloom_lvl3_weight 0.32
bloom_lvl4_weight 0.48
bloom_lvl5_weight 0.00
bloom_lvl6_weight 0.96
bloom_lvl7_weight 0.72
bloom_lvl8_weight 0.48
bloom_lvl9_weight 0.24
bloom_lvl10_weight 0.12

I also contacted Timothy Lotte, regarding the "point" shader and this is what he answered me:

It sounds like what you really need is an engine which renders pairs of
triangles representing a box around all the vector lines to draw all the
lines, and then uses some math in the pixel shader to compute the color
inside the line based on line size and position in the line. Then you can
easily do anything at the ends of the lines to represent the increased
brightness points, and do anything to get wide filtered lines.
Unfortunately this isn't something I have time to do myself right now, but
I could provide a few hints on what would be needed in the shader..

Might be a different approach, than doing it with sprites. Would your "sprite" solution work globally on all vector games? i.e. arcade, vectrex etc. ?

Also we want to add some slight jiggle to the vectors, what do you think about this? At least this could be done way more easier ;) .

Anyway, nice that you did not give up and i hope that we can find a way, to create some new stuff for vectors. If you have questions, feel free to ask. You are not alone outthere :D .

Have a nice weekend, u-man

RE: Vector games.... Vector shader? WTF???

Hello again :)

Double bump, because 2 months passed since last post :D .
Maybe you allready noticed the big changes of HLSL in MAME version 0162. This was done with all the work of Jezze. He is the guy that I talked about in my earlier posts here. Now, where HLSL has greatly improved and I finished a 40 pages shader-guide, I want to go further with vector-simulation. I am still interested in your work and like i said, there is Jezze who has enough talent i guess, to continue your precious work.

Right now, i try to find a good solution for a point shader. I think, that a piont shader is really important and wanted to ask you, how you would approach to create one? I think of one that works globally on all vector games (arcade, vectrex etc.). The shader should be able to analyze the frame, especially the vector-lines / points, and put accordingly to the result, additional points to the final image. The only shader i found who did this, come from a smart-phone vectrex emulator. You can see a picture of it here: http://cdn.arstechnica.net/wp-content/uploads/2012/12/minestorm-in-game.jpg

If you zoom in, you can see the points more clearly. The picture may look ugly, but on the smartphone it looks pretty nice. Hope to hear you again and what you think about :D ,

cheers, u-man

RE: Vector games.... Vector shader? WTF???

Yeah :D ... your monthly reminder ;) .... and happy eastern

cheers u-man

RE: Vector games.... Vector shader? WTF???

yeah... thats still good news for me :)
i can only imagine, that it is not easy to do.... especially if you can look only in your freetime into it. sometimes there are other things more important like chilling, family etc.
dont hurry, didnt want to urge you.

RE: Vector games.... Vector shader? WTF???

Hello again :) ,

I just want to bump this thread, because it is now over a month since my last post ;) . So I ask you kindly what happened or will happen :) . I am still very interested in your work and hope you didnt give up.

All best wishes, u-man

RE: Vector games.... Vector shader? WTF???

That are good news.... cant wait for results :) .I am just happy, that you keep trying. Two big thumbs for your success.

cheers u-man

RE: Vector games.... Vector shader? WTF???

Yeah dude.... try it: http://www.vectrex.fr/ParaJVE/

A little Offtopic: http://www.zektor.com/zvg/index.html

Sadly they dont sell the card anymore, but I didnt give up hope. If I will ever get a chance, to get one, this would be make me so happy and would solve the vector problems for all time :D .

A jitter or "wobbling" effect (like in ParaJVE) would also be awesome. I am really excited, that you will look again on your work.If you have any problems, I can create a contact for you. Perhaps you can exchange your experience in a good way ;) .

And yeah.... "GEEKS" FTW

This item was edited on Tuesday, 27th January 2015, 13:49

RE: Vector games.... Vector shader? WTF???

First, thanks for replying ;) . Second, you didnt give up, very good sign.

So lets discuss the vector shader in MAME at the current state. Yes, there is a vector bloom scale (glow), but it starts very fast to get bloggy with artifacts (like bad jpg pictures). Indeed there is a phosphor parameter too, that seems to work ok.

Then there is a vector length ratio parameter, which at default of 500.00 is ridiciously high. Its better to start with 50.00 or even 20.00 to see a visual impact and to get a feel what it really does.

The flicker parameter looks ugly and is meaningless. Its either on or off, you can make it weaker with gamma, brightness and contrast parameters. Point glow is completely missing and in my eyes very important and needed.

So all in all, the vector HLSL part of MAME is not bad at all, but also not very good. The best vector shader in my experienced emulation world, can be found in ParaJVE, the Vectrex Emulator. I own a real Vectrex and must say, the emulation is very good, which till that point, I never thought it would be even possible to do it in a good, realistic way.

To be honest, I never tested your work, but from the pictures I saw, it reminded me instantly on ParaJVE :) . As I allready said, I know a talented german guy, who maybe can transform your work to direct x shader, so I am very interested in your work.

I still think that MAME needs a way better vector shader, then what we have now. Sadly, in the past, people couldnt help you much, but maybe we can change that ;) .

cheers, u-man

Vector games.... Vector shader? WTF???

Hello Robee,

I allready wrote to you on mameworld and looked at your robeej website but didnt find a e-mail. So i decided to register here, just to reach you.

I am interested in your vector shader works for mame, as i know a person who could probably port your work to a direct x shader. Are you still interested in this kind of stuff?

I would be happy to hear from you, but i think its better to answer me on mameworld ;) as i am more often there. Excuse my bad english.

cheers u-man