Commit Graph

14 Commits

Author SHA1 Message Date
Grant Paul
50b1213eca Add Windows support for loading PNG files using GDI+. 2017-06-19 11:52:20 -07:00
Grant Paul
1f6710d50a Add Windows support for byte order manipulation. 2017-06-19 11:52:20 -07:00
Grant Paul
7a001832a9 Add Windows, MSVC, and MinGW support to build configuration.
- Set to use static or dynamic libraries at top level.
 - Compiler configuration for MSVC and MinGW.
 - Copy rather than create symlink for aliases on Windows.
2017-06-19 11:52:20 -07:00
Grant Paul
674da37461 Explicitly reference contents of the current namespace. 2016-12-14 17:01:15 -08:00
Grant Paul
2f87e85363 Correct casts and pointer arithmetic.
Do pointer arithmetic only happen on typed pointers or integer
representations of pointers, not void pointers. Cast integer and
floating point types explicitly when reducing precision.
2016-12-14 17:01:15 -08:00
Stephane Sezer
416412043e Use target_compile_definitions instead of setting properties manually 2016-09-30 13:36:57 -07:00
Stephane Sezer
1790cb5d59 Make libpng a required library
The project won't build without libpng anyway. Make it fatal in cmake
instead of hiding the failure and letting the build step fail instead.
2016-09-30 13:36:57 -07:00
Grant Paul
b6757670cc Use Ubuntu libpng package on Travis. Fixes #119.
Modify libpng usage to support libpng 1.2 and later.
2016-09-20 16:11:07 +07:00
Marc Salem
065ffb7e2c Link libpng statically. (#100) 2016-07-27 17:39:24 -07:00
Grant Paul
01a4aa8e33 Generalize PNG writing implementation.
Replaces one-off instance for archive dumping. Includes unit tests.
2016-07-27 16:18:30 -07:00
Grant Paul
1242d7e711 Support both ImageIO and libpng for reading PNG images.
- Separate out PNG loading into a separate module.
 - Refactor PNG loading to be less tied to asset compliation.
 - Add an implementation of PNG loading using ImageIO when available.
 - Add a unit test for loading various types of PNG images.
2016-07-27 16:18:26 -07:00
Grant Paul
8c15c7d9ca Add representation of an image. 2016-07-27 16:18:22 -07:00
Grant Paul
b4a4c49e03 Add representation of and conversion between pixel formats.
Supports RGB and grayscale pixel formats and a variety of alpha channel
formats. Includes unit tests verifying the conversions are as expected.
2016-07-27 16:18:17 -07:00
Grant Paul
47be7e9a12 Add library for pixel manipulation code. 2016-07-27 16:18:12 -07:00