BGBTech: The Status Update

Profile
Tulsa, OK
Probably status updates or something...
37 comments
37 entries
Advertisement
cr88192
April 25, 2014
Software OpenGL Rasterizer + Quake 3 Arena
second test with Quake3 Arena, this time in 1440x900...




differences from before:
* More performance tweaks / micro-optimization;
* Now the rasterizer supports multiple threads (2 threads were used in this test, with the screen divided in half);
* Inline ASM is used in a few places;
* ...


it is still sort…
2,695 views
cr88192
April 17, 2014
Software OpenGL Rasterizer + Quake 2
basically, lacking much better to do recently, I wrote a basic software rasterizer and put an OpenGL front-end on it, then proceeded to make Quake 2 work on it:



yes, kind of sucks, but there are some limits as to what is likely doable on the CPU.
also, it is plain C and single threaded scalar code (n…
3,991 views
cr88192
March 29, 2014
BTIC1C Screen Capture: Performance and older HW...
I had recently fiddled some with BTIC1C real-time recording, and have got some interesting results:

main desktop PC, mostly holds a solid 29/30 fps for recording.
* 1680x1050p30 on a 3.4 GHz Phenom II X4 with 16GB PC3-1066 RAM.

it holds 25-28 fps on my newer laptop:
* 1440x900p30 on a 2.1 GHz Pentium D…
2,374 views
cr88192
March 03, 2014
partial status: HDD crash, in-engine profiler, new clouds/...
so, what happened recently:
one of my HDDs (in this case, a Seagate 2TB drive) decided to die on me mostly without warning.
* curse of Seagate: damn near every time I have used a Seagate drive, it has usually ended up dying on me.
** sort of like my experience with ASUS motherboards...
*** had reliabil…
2,222 views
cr88192
February 23, 2014
Partial: 2D Animation, video recording improvements...
well, status recently:
lame...


started working on a 2D animation tool, but then ran into UI complexities;
UI handling in my 3D engine has become a bit of a tangled mess, and there is no real abstraction over it (most things are, for the most part, handling keyboard events and mouse movements...);
there…
2,140 views
cr88192
January 20, 2014
misc: BTLZA (LZ77+Arithmetic), ...
recently threw together this thing:
http://cr88192.dyndns.org:8080/wiki/index.php/BTLZA

what is it?...
basically, an extended form of Deflate, intended mostly to improve compression with a "modest" impact on decoding speed (while also offering a modest boost in compression).

in its simplest mode, it is…
1,853 views
cr88192
January 05, 2014
Status: New version available, Codec-lib Zip
see here:
http://cr88192.dyndns.org:8080/wiki/index.php/BGB_Current_Status

a new version of the engine is available.

as well, the image codec library (BGBBTJ) is also available as a stand-alone zip:
http://cr88192.dyndns.org:8080/2014-01-05_bgbtech_bgbbtj.zip

little provision is made for out-of-box use,…
2,099 views
cr88192
December 24, 2013
Status: BTIC1C + BC6H and BC7, Expanded RGB depth.
well, first off, recently did a test showing the image quality for BTIC1C:


this test was for a video at 1024x1024 with 8.6 Mbps and 0.55 bpp.

as noted, the quality degradation is noticeable, but "mostly passable".
some amount of it is due largely to the conversion to RGB555, rather than actual quantiz…
2,543 views
cr88192
December 19, 2013
misc: added more features for BTIC1C...
well, the BTIC3A effort also kind of stalled out, mostly as the format turns out to be overly complex to implement (particularly on the encoder). I may revive the effort later, or maybe try again with a simpler design (leaving blocks in raster order and probably designing it to be easier to encode …
1,671 views
cr88192
December 08, 2013
Possible: BTIC1E (BPTC / BC6H / BC7 + Video Codec)
yes, yet more codec wackiness...


seeing as how my graphics hardware has a limited number of options for (non DXTn / S3TC) compressed texture formats, but does support BPTC / BC6H / BC7, which hinder effective real-time encoding (*), it may make sense to consider developing a video codec specifically…
3,342 views
cr88192
December 02, 2013
misc: FRIR2, (Possible) Alpha + Theora and XviD
recently was working some on a new interpreter design I was calling FRIR2.

what is it?

basically a Three-Address-Code Statically-Typed bytecode format;
the current intention was mostly to try to make a bytecode at least theoretically viable to JIT compile into a form which could be more performance co…
1,777 views
cr88192
November 04, 2013
misc: dungeon test...
basically, example here:



essentially went and added basic procedurally generated dungeons and a new weapon (the "rocket shovel").
the dungeons are generated on a regular grid, basically by partially randomly spawning dungeon chunks and having new dungeon chunks grow off of existing dungeon chunks (wh…
1,678 views
cr88192
October 25, 2013
random: codec drivers, more testing...
well, I had tried recently initially to write a VfW codec driver, but alas, it didn't work (initially).

I had a little more success writing a VLC Media Player plugin, which basically works by feeding the request into my codec system and using this to decode the video.

then, later got the VfW driver t…
1,379 views
cr88192
October 11, 2013
random: blue-screen, video compositing, ...
so, off in this strange place known as the physical world, I recently set up a blue-screen.
technically, it is just a blue bed sheet, as this is pretty much the only thing I had on-hand (yes, green cloth would be better, but I don't currently have any).

did do a few tests... put them up:



and, as part …
1,689 views
cr88192
September 24, 2013
random: video upsample and enhance...
well, this was another experiment... (possibly a waste of time, but oh well...).


I had an idea for a tool idea to experiment with:
a tool which will take input video, try to up-sample it in a way which "hopefully doesn't look like crap", and save output video.

basically, it just decodes frames from on…
1,905 views
cr88192
September 19, 2013
new experimental video codec, BTIC1C...
[font='-moz-fixed']Reused text...[/font]

[font='-moz-fixed']Once again, it is a codec intended for quickly decoding into DXT for use in animated textures and video-mapped textures.[/font]

[font='-moz-fixed']It is a direct continuation of my effort to implement Apple Video, but with a slight rename.[/…
1,552 views
cr88192
September 17, 2013
Planets, and Apple Video...
Planets:
I have decided to change my voxel engine from being an "infinite" 2D plane, to being a bounded 2D region, which I will assert as being a "planet".

this basically consisted of adding wrap-around, and generating a topographical map for the world.
currently, the world size is fairly small, rough…
1,289 views
cr88192
September 13, 2013
Bounds-checking? in C? it would appear so?... (sort of...).
well, here is something unexpected.
I have yet to generally confirm this, or yet did any real extensive testing to confirm that what I have encountered works, in-general, but it appears to be the case at least in the cases encountered.

(I can't actually seem to find any mention of it existing, like s…
1,575 views
cr88192
September 11, 2013
complexity and effort-budget...
idle thoughts here mostly:
project complexity is not nearly so easily estimated as some people seem to think it is;
time budget is, similarly, not nearly so easily estimated.

there is a common tendency to think that the effort investment in a project scales linearly (or exponentially) with the total s…
1,348 views
cr88192
September 02, 2013
otherwise: new codec, BTAC 2A
Some info available here:

http://cr88192.dyndns.org:8080/wiki/index.php/BGBTech_Audio_Codec_2A

this is basically a codec I threw together over the past some-odd days (on-off over the past 10 days), probably a solid 3 or 4 days worth of implementation effort though.

it was intended to try to have a bet…
1,332 views
cr88192
September 01, 2013
working backwards: A 2D platformer game?...
(started writing a post, but not sure if this makes much sense as a post...).


currently, I have a 3D game (FPS style), but also a bit of a problem:
it kind of sucks, pretty bad;
I don't think anyone really cares.

I also have a few drawbacks:
not very good at 3D modeling;
I am worse at map-making (hence..…
1,648 views
cr88192
August 22, 2013
optimization, ...
so, not much notable recently...

pretty much the past month it seems has mostly been things like performance optimizing and trying to shave down the memory footprint...

well, and I also added Oculus Rift support...
however, it is still a limiting factor that I can only use the thing for short periods …
1,334 views
cr88192
July 29, 2013
biomes test...
went and added biomes:


Well, a few updates:
Biomes have now basically been implemented;
The engine now has (essentially) infinite terrain (regions and chunks are generated as-needed, and regions are unloaded as the player moves too far away).

As the player travels further away from the origin, new regi…
1,454 views
cr88192
July 26, 2013
Terrain and chunks...
well, now more work is once again going into working on the voxel terrain system.
this is, at present, one of the bigger users of time and memory-resources in my 3D engine.

so, a few new things:
added "random think events", which basically allow random chunk-updates to occur (for example, grass now sp…
1,701 views
cr88192
July 20, 2013
experiments with 3D Anaglyph and stereoscopic output...
here is the result of one test (for stereoscopic 3D output):


note: MovieMaker and YouTube seem to be conspiring against me on this one, basically making it a challenge trying to get a video with the correct aspect ratio.

and a slightly earlier test of direct anaglyph output (intended for green/magent…
1,616 views
cr88192
July 04, 2013
idle thoughts: more ideas for a fast image format...
well, I have yet to replace my current use of BTJ ("BGBTech JPEG") with BTIC, partly due to a reason:
the size/quality tradeoff of BTIC is currently still a bit worse than with BTJ.

I was then left partly trying to think up ideas possibly for a format which would be cheaper than my current BTJ format…
1,375 views
cr88192
June 20, 2013
DXTn + AC & Deflate
well, I was working more on the DXTn based "BTIC" images.


ultimately, the downfall of the AC codec seems to be, once again, that its raw performance is a bit weak, and isn't really "generally better" enough than other options (such as Deflate) to really make the performance impact worthwhile.

granted…
1,528 views
cr88192
June 17, 2013
DXTn + Arithmetic Coding = Promising...
Well, here is the status...

I was recently skimming around, and looked at the VP8 and VP9 specs (used in WebM), and a detail stuck out:
the entropy coder (was called "BoolCoder" or similar...).

at first I was like, "hey, I have written something similar already...". then I looked more, realized what t…
1,501 views
cr88192
June 07, 2013
moderately optimizing a JPEG encoder...
Basically, this is a moderately micro-optimized JPEG encoder.
This version skips out on a few things to try to make encoding a little faster (for example, it uses fixed Huffman tables, ...), and is intended mostly for things like video-capture (where speed is slightly more important than compression…
1,955 views
cr88192
June 01, 2013
BTW: Updated DXT1+Alpha
I got around to fiddling with my DXT1 and DXT1+Alpha encoders, and then partly merged them both into a single encoder.

the change is mostly a slight improvement to image quality over the prior encoders:
incorporates slight dithering, more like the DXT5 encoder (and is based on the code from the DXT5 …
1,678 views
Advertisement

Popular Blogs

shawnhar
Generalist
101 Entries
8 Followers
15 Entries
9 Followers
johnhattan
Programmer
1,277 Entries
46 Followers
ApochPiQ
Generalist
628 Entries
43 Followers
dgreen02
Generalist
338 Entries
55 Followers
Advertisement