Quantcast

Page 7 of 7 FirstFirst ... 34567
Results 91 to 101 of 101

Thread: Voxels?

  1. #91
    Death Adder's minion
    Join Date
    Dec 2013
    Posts
    21
    Rep Power
    0

    Default

    Quote Originally Posted by BladeJunker View Post
    Quick question, you know of anyone doing color raster effects for increased color count on the Genesis like flickering 2 layers as C64 demos do? Something along the lines of a photo viewer streaming from the Sega CD. See multimedia, another project in itself.
    It doesn't qualify as a rastering effect (neither does flickering two layers, by the way), but gaseka68k's Wolfenstein implements a couple of filters that achieve something like that via the scroll registers.

  2. #92
    Hero of Algol Kamahl's Avatar
    Join Date
    Jan 2011
    Location
    Belgium
    Age
    31
    Posts
    8,637
    Rep Power
    143

    Default

    That's ridiculously fast for C o_O, someone get gasega on the line, he needs to switch his code to this. "Bigger" pixels sure (well, not really since his are dithered) but having all 512 colours available is more than worth it. No more dithering or silly filters.

  3. #93
    Outrunner Stef's Avatar
    Join Date
    Aug 2011
    Location
    France
    Posts
    628
    Rep Power
    32

    Default

    I think that having 512 colors and more exactly RGB333 pixel format is overkilling for that type of game. You render a single pixel with 16 bits, definitely hurt on final rendering speed. But, having real RGB pixel format allow all sort of pixel blending or whatever crazy effect =) That would be really impressive to see sort of lighting or other weird effect like this on Sega CD.

  4. #94
    ESWAT Veteran Chilly Willy's Avatar
    Join Date
    Feb 2009
    Posts
    6,744
    Rep Power
    79

    Default

    Compared to writing a pair of pixels as a byte (with the pair acting as a single pixel with more colors due to blending), DCD uses twice the space since you're writing a word instead of a byte. They give the same resolution - 160 or 128 wide (for 320 or 256 wide modes). Paired pixels doesn't give as fine a control over the color and requires the proper palette. It might also look funny if you're using a good TV interface that kills the blending effect. But that half the data drawing could be vital.

    Also remember that DCD is not too useful on a stock MD without the CD as there really isn't any ram for the mode. DCD needs about 80KB for the display. It's an excellent mode for the CD - remember that the CD 68000 is 12.5 MHz, and you have two banks of 128KB of ram that you can flip instantly between. No DMAing data into vram, and 128KB is plenty for the mode, plus some extra space for temp usage.

  5. #95
    Road Rasher BladeJunker's Avatar
    Join Date
    Jul 2014
    Location
    BC Canada
    Posts
    354
    Rep Power
    11

    Default

    Quote Originally Posted by Chilly Willy View Post
    Hmm - the only thing like that I'm aware of recently is the Direct Color DMA. That gives a 160x224 or 128x224 display using 9 bit BGR pixels. That allows all 512 possible colors directly. I did a Wolf3D sorta demo for the CD using the mode along with my SCD MOD player. If you don't remember how that looks, someone made a video:

    That's all C other than the fixed point multiply. I can't imagine how fast it would run and how good it would look using gasega68k's Wolf3D base.
    Thanks, yeah along these lines. The memory limits are tighter than I thought, I'm not good at perceiving memory as pertains to image resolution, my buddy no problem but me duh. I'm impressed the raycasting runs as fast as it does.

    Not surprised resolution took a hit and while I actually like double wide pixel art I don't think it suits what I had in mind. I guess I'm thinking of a more palette driven approach rather than direct, maybe 128 colors perceptibly through phosphor related flicker. Cheaper tricks but still 320X224 and 256x224 modes employed. It's hard to get across to a general audience how many colors are present when the resolution drops lower than default, you can explain it but to no avail.

    I could be barking up the wrong tree, maybe it's like SCD FMV of less color but better palletization methods needed and more suitable compression. Been trying to "fix" SCD FMV for a while, can't get the color count high but if you can remove distinct color to color aliasing and concentrate the colors into regional shapes you can get live actors looking half way decent. Keying would have helped in retrospect.

    Btw figured out a direction for that Adventure project, I'm thinking a polygonal textured floor might be the best compromise like F1 OWC:BTL(What a title lol.) or Battlecorps if it does that, not great draw distance but frees up scaling to deal with scene furniture sprites rather than a Mode 7 plane.

  6. #96
    Road Rasher BladeJunker's Avatar
    Join Date
    Jul 2014
    Location
    BC Canada
    Posts
    354
    Rep Power
    11

    Default

    Quote Originally Posted by TheMole View Post
    It doesn't qualify as a rastering effect (neither does flickering two layers, by the way), but gaseka68k's Wolfenstein implements a couple of filters that achieve something like that via the scroll registers.
    Ah that is probably what I'm looking for, thanks.

  7. #97
    Outrunner Stef's Avatar
    Join Date
    Aug 2011
    Location
    France
    Posts
    628
    Rep Power
    32

    Default

    Quote Originally Posted by Chilly Willy View Post
    Also remember that DCD is not too useful on a stock MD without the CD as there really isn't any ram for the mode. DCD needs about 80KB for the display. It's an excellent mode for the CD - remember that the CD 68000 is 12.5 MHz, and you have two banks of 128KB of ram that you can flip instantly between. No DMAing data into vram, and 128KB is plenty for the mode, plus some extra space for temp usage.
    Indeed this mode is really suited for the MegaCD. Not sure about it but when you split word ram in 2x128 KB bank can you do DMA from first bank while the sub 68k is accessing the second one ? I think it's the case as first bank is then connected to master bus while the second is connected the slave bus. That is a ideal work case, display image from one bank while generating the second image... the only wait period is when you have to switch banks, you need to do it at VBlank or at least when no more CRAM DMA is occurring.

  8. #98
    Wildside Expert gasega68k's Avatar
    Join Date
    Aug 2013
    Posts
    142
    Rep Power
    30

    Default

    Hi there
    Since you guys have been talking about the raycast, I would like to tell you something, when I showed the new engine of Starfox 3D with DMA, had an idea in my head about a new method to draw faster walls, from about 2 months I have been experimenting with this new method to draw walls and can say it works, though it is still experimental, these are some results I obtained:
    -with a resolution of 288 x 144 (RAM buffer size = 20736bytes) using Raycast of Wolf3D, runs between 17-20fps.
    -with the same resolution, but using a faster Raycast (with a little less precision in some calculations, but sufficiently accurate), runs between 18-24fps.
    Now the three that follow, using the fastest Raycast and mode 256 (H32):
    -with a resolution of 224x128 (RAM buffer size = 14336bytes) runs between 24-30fps.
    -with a resolution of 224x144 (RAM buffer size = 16128bytes) runs between 20-28fps.
    -with a resolution of 240x160 (RAM buffer size = 19200bytes) runs between 19-26fps.
    As this method is faster, it could use it for several more things:
    Make a engine with textures on the floor/ceiling.
    Use 2 planes (with 2 buffer) for 32 colors.
    Make a engine to get a true pixel by pixel Raycast (true 256 x 128 pixels).

    I could also use this method in Wolf3D, but would have to make many changes and also not much space in RAM for this, perhaps only for a maximum of 272 x 144, but I'll probably leave the Wolf3D as is.

    Although as I said, this is still experimental, and probably still have to do some testing, I surely will use this method for any game (maybe the possible port of the version of Mac/3do for Gen/Md). Maybe in a few months I'll be showing some of these demos, because I'm still experimenting on, and also now I'm more focused on the port of Wolf3D.

    On the topic of voxels, I found a very interesting site, especially a demo with qbasic (not sure if it has already been shown here):
    http://timedoctor.org/fun/mirrors/3D...ken/voxlap.htm

    although I have not analyzed in depth, I think it could be done in the Gen/MD, but maybe I'm wrong and I'm also not sure if it can generate complex graphics.

  9. #99
    ESWAT Veteran Chilly Willy's Avatar
    Join Date
    Feb 2009
    Posts
    6,744
    Rep Power
    79

    Default

    Quote Originally Posted by Stef View Post
    Indeed this mode is really suited for the MegaCD. Not sure about it but when you split word ram in 2x128 KB bank can you do DMA from first bank while the sub 68k is accessing the second one ? I think it's the case as first bank is then connected to master bus while the second is connected the slave bus. That is a ideal work case, display image from one bank while generating the second image... the only wait period is when you have to switch banks, you need to do it at VBlank or at least when no more CRAM DMA is occurring.
    In the 1M mode (two banks of 128KB each) you can draw to one with the CD 68000 while the VDP DMAs the data from the other bank. You can switch at any time, but doing so during the visible frame can show tearing as things move from one from to the other. My raycasting demo only flips in the vblank to avoid that.

    Note that the ASIC can't do any drawing in 1M mode, it requires 2M mode, so that's not suitable for this mode... which is a pity.

    One more note - you can DMA from any point in the 128KB bank, so you can do some scrolling by changing where you DMA from. That's best for vertical scrolling. So I could see this mode being neat for vertical shooters as well.

  10. #100
    Outrunner Stef's Avatar
    Join Date
    Aug 2011
    Location
    France
    Posts
    628
    Rep Power
    32

    Default

    gasega68k> Hey that definitely sounds interesting
    I saw that with your new method you plan to use H32 mode so i guess this method is not using DMA anymore (DMA is slower in H32) ?
    I think the best choice would be to use 240x160 in H32, 19-26 FPS is already very good !
    Having textured floor / ceiling woiuld be awesome too, getting close to Doom

  11. #101
    Wildside Expert gasega68k's Avatar
    Join Date
    Aug 2013
    Posts
    142
    Rep Power
    30

    Default

    Quote Originally Posted by Stef View Post
    gasega68k> Hey that definitely sounds interesting
    I saw that with your new method you plan to use H32 mode so i guess this method is not using DMA anymore (DMA is slower in H32) ?
    I think the best choice would be to use 240x160 in H32, 19-26 FPS is already very good !
    Having textured floor / ceiling woiuld be awesome too, getting close to Doom
    I'm still using DMA with this method with the H32 mode. All demos I described (exept that of 224x128), takes two steps (2 frames) to transfer the buffer to VRAM. For example 240x160 demo requires about 58 lines per block (9600 bytes) to be transferred to the VRAM, and even enough to have a Hud of 32 lines for a total image size of 240x192.

    The only problem with these demos is that it causes a small "tearing" (except the demo of 224x128 that the buffer is transferred in a single block), although it is not very noticeable, but this can be solved with double buffering in Vram, although you can actually double buffer with only one of the blocks:

    the first block is transferred to one of the two Vram buffer (the first half of the image), the second block is transferred in the next frame (the second half of the image), then the buffer of the first block are exchanged.
    Thus, only 28800bytes required in VRAM instead of 38400 for a resolution of 240x160.

    Another problem is that the H32 mode is not as good as the H40 mode to simulate more colors, but still works.

    I'm still not sure using this method for Wolf3D as it would have to change many things, but maybe I'll do for a possible port of Wolf3D version of Mac/3DO or maybe something else.

    The demo of 224x128, is that I want to add textures on the ceiling/floor, as it is so fast that it could even have a "decent speed", at least that's what I think.

    I still want to experiment with this method before showing something (maybe in a few weeks), also because I want to finish at least the final version of Wolf3D with the first episode.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •