Commit Graph

338 Commits

Author SHA1 Message Date
Sean Barrett fc5668cdac makefile for tests 2017-01-16 01:09:50 -08:00
Sean Barrett 53e4334bf7 Merge pull request #363 from mgerhardy/patch-1
Shouldn't this be 6?
2017-01-02 18:15:16 -05:00
Sean Barrett c9fe5bac48 rename all stb_sprintf identifiers to follow stb conventions 2016-12-05 03:48:37 -08:00
Sean Barrett 0b2c06a7e1 more STB_IMAGE_STATIC fixes 2016-12-04 05:39:35 -08:00
Sean Barrett 7d0099ecc9 fix bug in stb_connected_components adjacency list updating incorrectly handling avoiding adding the same connection twice 2016-10-16 07:58:59 -07:00
Sean Barrett cf51044bc6 update stb_pg project 2016-10-07 08:23:24 -07:00
Martin Gerhardy 4a60c54710 Shouldn't this be 6? 2016-09-30 10:13:05 +02:00
Sean Barrett 25b1f563d1 stbcc 0.94 2016-04-17 09:16:26 -07:00
Sean Barrett 51393c0a7a remove dead code after previous optimizations 2016-04-17 08:45:06 -07:00
Sean Barrett d1eba33305 fix bug w/ large clumps per cluster;
reduce time spent on global union-find by skipping clumps that don't touch edges
2016-04-17 08:12:52 -07:00
Sean Barrett ad55a9b383 version 0.93
assign surplus adjacency storage only to clumps that touch edge
document timings and memory usage
2016-04-16 14:05:40 -07:00
Sean Barrett 667f79589a forgot to include stb_connected_components test source file 2016-04-16 12:58:37 -07:00
Sean Barrett e585dad291 change map image formats to workaround stb_image bug 2016-04-16 11:21:59 -07:00
Sean Barrett 0214a3c71f untested simple batching;
document algorithm;
automatically use sqrt(N) instead of 32 as cluster size
2016-04-16 10:04:03 -07:00
Sean Barrett 1392344cdd include stb_connected_components.h in main stb compile tests, add test app 2016-04-16 09:14:39 -07:00
Sean Barrett cbc1e7c897 Merge branch 'test' into working 2016-04-02 02:13:41 -07:00
Sean Barrett 4ff6723a6d make resample_test work in VC6 2016-04-02 02:13:20 -07:00
Sean Barrett 50479cb07c stb_image: allow jpegs that are rgb not YCrCb 2016-03-26 15:46:59 -07:00
Jorge Rodriguez ff862a2a46 Merge https://github.com/nothings/stb 2016-02-09 19:37:07 -08:00
Sean Barrett 9c8762a156 update other_libs.md 2016-01-23 08:44:27 -08:00
Sean Barrett 820f63be44 stb_tilemap_editor: fix typo in docuemtnation, update version & credits 2016-01-22 05:17:12 -08:00
Sean Barrett 0860860af6 avoid __forceinline in mingw since their definition for C is broken;
dummy definitions for malloc et al (note you have to modify source to make this work though anyway);
tweak credits change;
2016-01-16 07:19:27 -08:00
Jorge Rodriguez 831b2d2fa6 Fix a merge gone wrong, add some more test cases. 2015-11-10 13:41:53 -08:00
Jorge Rodriguez a1ef3a1060 Fix the calculation of the input image shift when using subpixel regions 2015-11-10 11:25:59 -08:00
Sean Barrett 2b57ea95da fixed version of removed support for CODEBOOK_SHORTS 2015-11-08 19:16:25 -08:00
Sean Barrett bc2219e1b3 fix multiple crashes on invalid files 2015-11-08 16:22:07 -08:00
Sean Barrett ea88e59b5d fix invalid handling of truncated end-of-file indicator 2015-11-08 13:45:33 -08:00
Sean Barrett 69a318bdb3 fix two invalid-file crashes found by fuzz testing 2015-11-08 13:20:55 -08:00
Sean Barrett 2073403a5f fix two setup crashes found by fuzz testing 2015-11-08 13:09:30 -08:00
Sean Barrett 297ff62859 change bmp info to use common header parser 2015-11-08 13:09:16 -08:00
Sean Barrett 876aea3dbe refactor bmp header parser for sharing with stbi_info 2015-11-08 01:22:30 -08:00
Sean Barrett 93b2b82996 get rid of unused return value from write callback 2015-09-14 05:57:42 -07:00
Sean Barrett b4477803cb fix public function names;
fix internal names to be namspaced properly;
2015-09-14 05:48:24 -07:00
Sean Barrett ff116a4fe8 allow font ranges with first_char = 0;
fix divide by 0 for exactly-vertical edges;
fix possible divide by 0 for exactly-horizontal edges
add documentation for stbtt_Rasterize;
2015-09-13 11:42:54 -07:00
Sean Barrett d5b8af12cb fix missing "defined" in #if defined(STBI_NO_foo);
fix incorrect initialization of alpha channel for RGB PSD
2015-09-13 11:08:40 -07:00
Sean Barrett 023ff3ffd2 Merge pull request #140 from ocornut/stb-wingraph-static
stb_wingraph.h: missing lib pragmas for completeness
2015-09-13 07:01:02 -07:00
Sean Barrett 33c9010223 update version & version history 2015-09-13 05:51:16 -07:00
Sean Barrett 90dc93a1cc fix bug where we couldn't rewind a file that reached EOF, which can happen with < 92-byte PIC,PNM,HDR,TGA 2015-09-13 05:41:21 -07:00
Sean Barrett a3d62dfec1 fix a few crash bugs with invalid stb_vorbis files (reported by Philip Bennefall, found using a fuzz tester) 2015-09-03 11:16:19 -07:00
Sean Barrett 0e24ec5feb fix some cases that didn't return outofmem error properly and would crash instead 2015-09-03 07:11:02 -07:00
Sean Barrett c15190373c add missing changes to project file 2015-08-30 19:31:36 -07:00
Sean Barrett ebb54fd7a3 seeking in stb_vorbis (Dougall Johnson)
test program for seeking (stb)
2015-08-30 19:29:35 -07:00
Sean Barrett d821fd83f3 Merge branch 'master' into working
Conflicts:
	stb_voxel_render.h
2015-08-01 04:02:00 -07:00
ocornut be8284de7e stb_wingraph.h: missing lib pragmas for completeness 2015-06-30 20:02:41 -06:00
Sean Barrett aa89970d6b stb_image.h: fix *comp value when loading PSDs
stb_voxel_render.h: fix STBVOX_CONFIG_OPTIMIZED_VHEIGHT
2015-05-28 22:11:45 -07:00
Sean Barrett 3f17b24d90 make sure all libs compile as C++ 2015-04-14 03:53:26 -07:00
Sean Barrett 1384715b11 Merge branch 'master' into working 2015-04-13 11:58:26 -07:00
Sean Barrett 7b72651134 add stb_voxel_render to standard compilation tests 2015-04-12 08:59:49 -07:00
Sean Barrett 9534eb2e08 added input.packed_compact for storing most of the major 2/3-bit values in one byte 2015-04-12 01:23:18 -07:00
Sean Barrett 6685256560 change STBVOX_MAKE_LIGHTING to STBVOX_MAKE_LIGHTING_EXT so header file
doesn't have to see the config variables (although this way is actually
more bug prone since you can now use the wrong macro)
2015-04-11 01:05:55 -07:00
Sean Barrett e2b645e4d7 Add vheight documentation;
Add a missing vheight case;
Add STBVOX_CONFIG_VHEIGHT_IN_LIGHTING;
Fix broken STBVOX_CONFIG_ROTATION_IN_LIGHTING that was broken when I incompletely refactored the #define
2015-04-11 01:01:57 -07:00
Sean Barrett cd1d05b389 voxel render 0.78; compile as C++, fix bad #else 2015-04-02 07:08:27 -07:00
Sean Barrett 90d58e577e Update README.md 2015-04-01 13:52:03 -07:00
Mischanix feae54a2d9 Request a 24-bit depth buffer 2015-04-01 12:41:49 -05:00
Sean Barrett 3bb829574d mostly documented 2015-04-01 00:24:46 -07:00
Sean Barrett 9e5e19f5a3 various fixes 2015-03-31 02:32:17 -07:00
Sean Barrett 28630fb253 various fixes 2015-03-30 13:19:06 -07:00
Sean Barrett 0f8e471f7b various voxel/caveview improvements 2015-03-28 17:36:09 -07:00
Sean Barrett 0669a6659a fixes for premultiplied alpha 2015-03-17 02:21:17 -07:00
Sean Barrett ba49d37e6a premultiplied alpha support 2015-03-17 02:10:58 -07:00
Sean Barrett f49c90c03d beginnings of mode support;
reconstruct full table of bit allocations per mode
2015-03-15 11:17:14 -07:00
Sean Barrett c588d29e95 switch shader variation from runtime-with-tags to dynamic with #ifdefs;
support making all definitions static so you can have multiple copies of file (with different #ifdefs);
move all tables to end of file (this will have to be undone later because IIRC it's not compatible with C++ or with some compilers or something, but it'll make my life easier in the interim);
2015-03-15 10:18:13 -07:00
Sean Barrett 00810b7d11 correct normals for vheight floors 2015-03-14 15:02:51 -07:00
Sean Barrett c10b3fefae correct normals for upwards slope (and dummy lighting to test it) 2015-03-13 19:00:34 -07:00
Sean Barrett 177498673e update readme with wood type status 2015-03-13 12:39:30 -07:00
Sean Barrett 6509e1d1e7 minecraft wood types (only for solid blocks) 2015-03-13 12:45:49 -07:00
Sean Barrett f02b0d700f if vertex buffer is full, mesh builder stops gracefully and remembers where to continue 2015-03-13 12:00:00 -07:00
Sean Barrett efcd76c9ab support texture rotation; better interaction of mouse centering & VC6 debugger; fix in-place conversion when mca blocks are written in different order 2015-03-12 19:03:49 -07:00
Sean Barrett 3d4f545fd7 remove unused gl_fragColor support 2015-03-12 11:38:10 -07:00
Sean Barrett 673cbb1ee4 remove unused code from cave_main 2015-03-12 00:07:50 -07:00
Sean Barrett 0cd5465f52 re-add README.md that was in a different branch 2015-03-12 00:00:10 -07:00
Sean Barrett c27a6c6c36 restore old q&a 2015-03-11 23:54:45 -07:00
Sean Barrett 14b203571a forgot to check in .dsp file after the renames 2015-02-22 18:27:17 -08:00
Sean Barrett f9c24c20fc various cleanup; vheight works (only one path tested) 2015-02-22 17:42:46 -08:00
Sean Barrett 1d18b23ea1 replace main.c & game.c with cave_main.c 2015-02-22 15:52:03 -08:00
Sean Barrett 7add4d09b9 delete game.h 2015-02-22 15:42:24 -08:00
Sean Barrett 0e2583041d minor cleanup 2015-02-22 15:25:54 -08:00
Sean Barrett 5a0dcc90d6 initialize cache mutexes in right file 2015-02-22 15:09:22 -08:00
Sean Barrett cd17050ca4 split render.c into cave_mesher.c and cave_render.c 2015-02-22 15:03:04 -08:00
Sean Barrett 2770c92148 initial stb_voxel_render version with working minecraft viewer 2015-02-22 14:34:05 -08:00
Sean Barrett 0d840ab330 quick & dirty leak checker 2015-01-21 07:46:54 -08:00
Sean Barrett 22fa9a467a rewrite HDR rle logic 2015-01-18 10:43:42 -08:00
Sean Barrett 5b53d20c68 Put progressive JPEG AC decode logic back the way I wrote it originally (I changed it to match jpgd when I was trying to figure out why it didn't work);
add STBI__ prefixes to internal SCAN_ enum;
strip unused function arguments for progressive funcs;
tweak release notes;
forget to git commit frequently so these would all be in their own commits;
2014-12-23 05:11:36 -08:00
Sean Barrett 16d9ed7211 return truetype test code to old path 2014-12-21 08:32:09 -08:00
Sean Barrett 53008c0922 default tests 2014-12-21 08:25:13 -08:00
Sean Barrett 33e24eafa0 in progress progressive stuff 2014-12-21 07:53:05 -08:00
Sean Barrett ba5e333faf STBI_MALLOC etc.
some documentation cleanup
2014-12-20 05:46:13 -08:00
Sean Barrett bd6b78f268 finalize scalar YCbCr conversion back-ported from SSE version;
add missing STBIDEFs to a few functions;
update documentation with full 1.49 info even though most isn't implemented yet
2014-12-20 05:13:25 -08:00
Sean Barrett f259bf27e9 VC6:
support using inline asm for cpuid

YCbCr:
  switch SSE code to constants that match old C;
  create C version that is same as SSE;
  tiny optimization(?) of SSE
2014-12-19 04:39:04 -08:00
Sean Barrett f547761c15 Fix assert() that should be STBI_ASSERT() 2014-12-14 18:14:14 -08:00
Sean Barrett f9e593c25c Merge branch 'optimize' of https://github.com/rygorous/stb into working
Conflicts:
	stb_image.h

Also disable VC6 automatic precompiled headers which were enabled in some projects.
2014-12-14 01:57:22 -08:00
Sean Barrett 8ac015c03f fix 1/2/4-bit png to filter bytes before decoding to pixels;
rename pngsuite/part1 to pngsuite/primary;
check in pngsuite
2014-12-14 01:43:23 -08:00
Sean Barrett 01d2c9d957 test program now verifies pngsuite tests against refererence versions 2014-12-14 00:01:50 -08:00
Sean Barrett 8679ce08b7 fix incorrect img_n variable for interlaced files, caused files to be totally incorrect if forcing channel count 2014-12-13 23:35:55 -08:00
Sean Barrett 26439254e8 fix use of stbrp_coord if no stb_rect_pack;
fix a few assert()s that weren't STBTT_asserts();
fix missing cast for C++
fix typo in C++ test compilation that prevented it from trying to compile stb_truetype
2014-12-10 00:27:11 -08:00
nothings 8ac41a413d fix typo 2014-12-08 11:42:47 -08:00
nothings 3a5caacaae Update README.md 2014-12-06 23:50:34 -08:00
nothings 49d5456de9 Update README.md 2014-12-06 23:49:29 -08:00
nothings 916800aae5 Update README.md 2014-12-06 23:48:10 -08:00
nothings cd5b5a5684 Update README.md 2014-12-06 23:46:40 -08:00
nothings b62bc08c34 Update README.md 2014-12-06 23:31:12 -08:00
nothings ae5bc8dfe9 Update README.md 2014-12-06 23:30:46 -08:00
nothings 9b1e1c50c0 Update README.md 2014-12-06 23:28:28 -08:00
nothings 7d0cec62c8 Update README.md 2014-12-06 23:28:04 -08:00
nothings 4b87ba76fe Update README.md 2014-12-06 23:22:14 -08:00
nothings 539dc3996b Update README.md 2014-12-06 23:21:11 -08:00
nothings 19b24bba1a Update README.md 2014-12-06 23:19:25 -08:00
nothings c6e1ec0cec Create README.md 2014-12-06 23:17:44 -08:00
Sean Barrett 22dbcffef7 stbtt_Pack* documentation
oversample test tweaks
2014-12-06 23:00:59 -08:00
Sean Barrett f03e352093 stb_rect_pack: fix LARGE_RECT bug
stb_truetype: oversampling, including oversampling demo app
2014-12-06 12:28:46 -08:00
Sean Barrett b6f8358f47 various fixes for compilation test 2014-12-02 03:00:08 -08:00
Sean Barrett d97c160e4a tilemap editor 0.30 2014-10-19 21:18:07 -07:00
Sean Barrett 17647014b3 fix c++ compilation 2014-09-23 17:56:03 -07:00
Sean Barrett 17e82a4080 Merge branch 'master' into working 2014-09-18 07:10:18 -07:00
Sean Barrett 37faf29f69 Merge branch 'resample' 2014-09-17 07:10:40 -07:00
Sean Barrett 0fc13e997b optimization attempts, no meaningful changes 2014-09-17 06:24:40 -07:00
Jorge Rodriguez cbf5ebbd35 Install ryg's float -> uint8 sRGB conversion code, which is much faster. 2014-09-16 10:36:19 -07:00
Jorge Rodriguez 600d80387e Make a guess at the value before doing the binary search, cuts the number of conditionals by half. Not as much gain as I hoped but something. 2014-09-15 14:01:11 -07:00
Sean Barrett dd28033b34 don't encode alpha channel twice when alpha is different colorspace from other channels 2014-09-15 07:23:22 -07:00
Sean Barrett 9f66b441bd new quickstart docs;
reformat docs;
new simple uint32 test
2014-09-14 14:55:23 -07:00
Jorge Rodriguez f0ba7f5f7e Get rid of old perf tests. 2014-09-13 13:42:50 -07:00
Sean Barrett 385d7a417c delete some unused functions;
get rid of stbir__inline for some functions that don't need it
2014-09-13 08:50:10 -07:00
Sean Barrett f711fdcb0f disable performance test in test code, back to regression test path 2014-09-13 08:22:15 -07:00
Sean Barrett 9a6af9a8d3 replace int(floor()) with int(), since that produces same results for non-negative values and is much faster on 32-bit x86 2014-09-13 08:12:37 -07:00
Sean Barrett 1dcca19ae0 because of we divide by /255 not /256, we lose numerical precision, so can't guarantee that box filter results round to same results as naive 2014-09-13 08:06:39 -07:00
Sean Barrett 972456cb63 explicit performance tests variants 2014-09-13 06:53:53 -07:00
Sean Barrett c9600c012f unroll channel loops in downsampler 2014-09-13 06:23:07 -07:00
Sean Barrett 0fa5b5c66f rename cubic to cubicbspline;
tweak filter type documentation
2014-09-13 05:52:19 -07:00
Sean Barrett 29b36b3dea rename filters, document them 2014-09-12 05:28:24 -07:00
Sean Barrett da2aa8f6b7 checkboard test to verify srgb 2014-09-12 05:04:38 -07:00
Sean Barrett a9778b8dbd tweak docs; fix compile error in UNUSED_PARAM stuff 2014-09-12 04:46:41 -07:00
Sean Barrett 7a4f1f4665 update with new tests for srgb conversion 2014-09-11 02:10:37 -07:00
Sean Barrett 16d68d14f8 fix stbir__linear_to_srgb_uchar:
1. table stored threshhold of transition from i to i+1, but wants to be i-1 to i
    2. table was computed by dividing uchar by 256.0 instead of 255.0, causing it to be 100% wrong
2014-09-11 02:05:53 -07:00
Sean Barrett 30c7a981ec compile as C;
fix some unsigned/signed comparisons;
avoid round() since it's not in pre-C99 C;
remove MAX_CHANNELS since I never ended up needing it;
rename STBIR_EPSILON to STBIR_ALPHA_EPSILON;
don't use STBIR_ALPHA_EPSILON on float input (can't remove it properly due to numeric precision, and they can do it themselves);
optimize subtraction of STBIR_ALPHA_EPSILON;
sorry i forgot to commit these separately!;
2014-09-11 01:47:50 -07:00
Sean Barrett 1208730e1e Merge branch 'resample' of http://github.com/bsvino/stb into resample 2014-09-11 01:15:09 -07:00
Jorge Rodriguez 953a637841 Use a carefully shaped trapezoid instead of a box filter to avoid jumps between pixel values. 2014-09-10 19:08:11 -07:00
Sean Barrett 671f04bd7e debugging truetype crash 2014-09-10 15:35:06 -07:00
Sean Barrett 4e580cf9ed fix compile 2014-09-10 15:11:35 -07:00
Jorge Rodriguez c9d67446d2 Reverse allocation routines parameter order so that the context is at the back. 2014-09-09 22:57:15 -07:00
Jorge Rodriguez 41e6aad693 Avoid repeated adds and ensure correct round-trip result. 2014-09-09 21:57:46 -07:00
Jorge Rodriguez 969ff7c850 Make sure calculate_memory matches with the allocations. Fix some errant asserts. 2014-09-09 20:51:29 -07:00
Jorge Rodriguez 4b69c0637e If alpha is zero then sneakily replace it with a very small nonzero so that the color data is preserved.
Pre-process n1 so that we don't have to do it later on. Can't do n0 since it's used to find the coefficient index.
2014-09-09 18:38:05 -07:00
Jorge Rodriguez 084baed15c Replace premul test with better premul test that doesn't require visual inspection. 2014-09-09 16:30:06 -07:00
Jorge Rodriguez 497eab8339 Normalize downsample coefficients. 2014-09-09 15:22:29 -07:00
Jorge Rodriguez 43fbc1d5e3 Rearrange the algebra on two of the filters to avoid repeating decimals which cause precision loss. Use int32 to test filters because it's more accurate. 2014-09-09 14:10:14 -07:00
Jorge Rodriguez ca241daefa Use rounding to try to preserve the original value. Fix test case. 2014-09-09 12:16:23 -07:00
Jorge Rodriguez 118f28557e Tests to ensure images of a solid color stay the same solid color after resampling. 2014-09-07 16:47:02 -07:00
Jorge Rodriguez e6c47ec657 Fix kernel lookup for downsampling. 2014-09-07 12:57:53 -07:00
Jorge Rodriguez 8cc6a3abfc If there's no context we're using the simple API functions - fall back to malloc and free. 2014-09-07 10:02:51 -07:00
Sean Barrett 36db03f390 tighten bounds on filter normalization test 2014-09-07 05:31:40 -07:00