Activity for Tilificator

  • Michel Iwaniec committed [b0f9ec] on Code

    Add grid-based version of "cut spritesheet" dialog:

  • Michel Iwaniec committed [15e5da] on Code

    Fix import/export of raw tiles for 8x16 mode

  • Michel Iwaniec committed [3937c1] on Code

    wip: Fix import/export of NES tiles for 8x16 mode

  • MichelIwaniec committed [9050c2]

    Add support for offsets in asm export:

  • MichelIwaniec committed [eb88ed]

    More improvements to asm export formatting:

  • MichelIwaniec committed [726154]

    Improvements to asm export formatting:

  • Tilificator Tilificator released /releases/Tilificator-v0.7-win64.zip

  • MichelIwaniec committed [95c990]

    Fix rare-but-fatal out-of-index error in TilingMethodDragQueen

  • Tilificator Tilificator released /releases/Tilificator-v0.6-win64.zip

  • MichelIwaniec committed [91239e]

    Add export-to-.asm feature for sprite images:

  • MichelIwaniec committed [392f4b]

    Add functionality to import / export NESST .msb format

  • Tilificator Tilificator released /releases/Tilificator-v0.5-win64.zip

  • MichelIwaniec committed [3912a1]

    Fix bug when loading sprite sheet with pixels occupying first line

  • MichelIwaniec committed [40ba10]

    Add sensible error messages for non-indexed images

  • MichelIwaniec committed [4236ca]

    * Use VERSION_STRING in setup.py for building c_tile extension module

  • MichelIwaniec committed [c1867b]

    Make "about" dialog report version correctly:

  • MichelIwaniec committed [2813ac]

    * Make a new variant of ShiftedRows, that avoids overlap.

  • Tilificator Tilificator released /releases/Tilificator-v0.4-win64.zip

  • Michel Iwaniec committed [e4bd05]

    * Re-organise files into a package 'tilificator', and switch to absolute imports

  • MichelIwaniec committed [119fae]

    WIP: Add Appveyor build automation

  • MichelIwaniec committed [2397b0]

    WIP: Add Appveyor build automation

  • MichelIwaniec committed [3ff012]

    WIP: Add Appveyor build automation

  • MichelIwaniec committed [b6ce52]

    WIP: Add Appveyor build automation

  • MichelIwaniec committed [158481]

    For completeness sake, added TilingMethodRect, which tilifies sprites with a regular grid as if they were background tiles.

  • MichelIwaniec committed [68d7a7]

    Update Copyright in About dialog to cover 2019.

  • Tilificator Tilificator released /releases/tilificator_v0.31-win64.zip

  • MichelIwaniec committed [b53d20]

    * Added an optional grid view using the QListWidget's IconMode.

  • Michel Iwaniec Michel Iwaniec modified a wiki page

    Home

  • Tilificator Tilificator released /releases/tilificator_v0.3-win64.zip

  • MichelIwaniec committed [4d9985]

    Add an approximate "global optimization" feature.

  • MichelIwaniec committed [587b88]

    For completeness sake, added TilingMethodRect, which tilifies sprites with a regular grid as if they were background tiles.

  • MichelIwaniec committed [1067e1]

    Made TileTable scroll properly, and added a groupbox to sprite image windows for a more consistent layout

  • MichelIwaniec committed [ff97e1]

    Remove unused QtUiTools import (was causing pyinstaller build to fail)

  • Michel Iwaniec Michel Iwaniec committed [13e3bf]

    First import of files! Tilificator is now secretly public... :)

  • Michel Iwaniec Michel Iwaniec committed [c650da]

    * Wrote simplified versions of draggableToRight/draggableToLeft and dragToRight/dragToLeft, allowing only one pixel drag at a time

  • Michel Iwaniec Michel Iwaniec committed [b81a38]

    * Removed debug printf calls from c_tile, for less noise in the console

  • Michel Iwaniec Michel Iwaniec committed [301826]

    Decided to create a new branch for the variable-drag rewrite, due to a still remaining uncertainty of whether this approach will work out in the end

  • Michel Iwaniec Michel Iwaniec committed [909e2d]

    * Optimized method "optimizeRows" in TilingMethodDragQueen a bit, mainly by adding a C extension for the coverageFromTilification function

  • Michel Iwaniec Michel Iwaniec committed [1609e3]

    * Removed all dependencies on NumPy

  • Michel Iwaniec Michel Iwaniec committed [87e6c2]

    * Fixed a bug in the sorting of sub-spriteImages based on size, making the sorting actually work

  • Michel Iwaniec Michel Iwaniec committed [bf02c7]

    * Eliminated the biggest memory leak in c_tile.c. The main problem was that both PyList_Append and Py_BuildValue increment the reference count of objects

  • Michel Iwaniec Michel Iwaniec committed [b56da6]

    * Added preliminary handling of multi-palette tilifications. SpriteImages are now automatically split into sub-images before tilifying, based on TileTable.colorSize. Still need to add functionality to set this value in the GUI

  • Michel Iwaniec Michel Iwaniec committed [5b5470]

    * Converted all tabs to spaces in source files

  • Michel Iwaniec Michel Iwaniec committed [cbbe5e]

    * TilingMethodDragQueen to use less memory, by using an iterator only once for the entire sequence of combinations. Memory leaks still seem to be a problem though...

  • Michel Iwaniec Michel Iwaniec committed [a30164]

    * Made TilingMethodDragQueen yield unconditionally at every 10th tilification evaluated, to increase general responsiveness

  • Michel Iwaniec Michel Iwaniec committed [8be6a8]

    * Fixed bug with deletion when trying to delete last tile in tiletable

  • Michel Iwaniec Michel Iwaniec committed [d7a197]

    * Improved the "cut sprite sheet" dialog to exclude smaller rectangles contained in a bigger one

  • Michel Iwaniec Michel Iwaniec committed [5ffec7]

    * Cleaned up the mess with MainWindow and TileTableWidget/SpriteImageWindow cross-referencing each other, instead using signals and callbacks

  • Michel Iwaniec Michel Iwaniec committed [93ff2e]

    * Reverted back to again using the incorrect "average sprites/scanline" calculation in cost function that divides by image height instead of tilification height, which was changed in revsision 16. The more correct method seemed to give to odd tilifications, affecting tilifications of later sprite images negatively. Again a limitation of just considering one sprite image at a time...

  • Michel Iwaniec Michel Iwaniec committed [08834c]

    * Another minor optimization, consisting of only performing one optimization stage in tryToReduce before returning, but calling it as long as reductionImpossible is false

  • Michel Iwaniec Michel Iwaniec committed [e4b4ec]

    * Cleaned up menus and added "select used" and "invert selection" commands

  • Michel Iwaniec Michel Iwaniec committed [b1ea7e]

    * Optimized method optimizeRows a bit more. Main speed increase comes from adding a function reductionImpossible, used to skip the later part when the number of sprites is detected to already be the minimum possible

  • Michel Iwaniec Michel Iwaniec committed [412b2c]

    * Minor optimization and cleanup of drag functions

  • Michel Iwaniec Michel Iwaniec committed [a8fc68]

    * Moved TileTableWidget and SpriteImageWindow class into separate files. Also renamed SpriteImageWindow to SpriteImageWidget

  • Michel Iwaniec Michel Iwaniec committed [16ca7c]

    * Changed file format, from plistlib to json. Old file format is still loadable but will be phased out eventually...

  • Michel Iwaniec Michel Iwaniec committed [e4ca9e]

    * Fixed a bug in TileTableWidget that was causing some unwanted rendering at zoom=2 before setting zoom=4

  • Michel Iwaniec Michel Iwaniec committed [4e35c1]

    * Added a dialog for Tile Table settings

  • Michel Iwaniec Michel Iwaniec committed [de4c68]

    * Added copyright and GPL license notices to source files

  • Michel Iwaniec Michel Iwaniec committed [daf9f0]

    * Reintegrated branch "singledrag" back into trunk

  • Michel Iwaniec Michel Iwaniec committed [9c440b]

    * Cleaned up TilingMethodDragQueen, removing some unused code in the process

  • Michel Iwaniec Michel Iwaniec committed [a0dd92]

    * Removed old debug printing

  • Michel Iwaniec Michel Iwaniec committed [06ca80]

    * Added proper X-sorting of sprites images in "cut sprite sheet" dialog, making their order quite a bit more intuitive

  • Michel Iwaniec Michel Iwaniec committed [162ce4]

    * Added handling of blank sub-images in splitImages function, and sorting based on size of spriteImage

  • Michel Iwaniec Michel Iwaniec committed [e535f7]

    * Removed the merging of tile table matches and self matches, instead calling matchSpriteTilesIterative twice. Megaman now tilifies into 102 tiles again. This could be reduced for this specific set of sprite images by 2 if the default positiom for *non* leftmost/rightmost was shifted to be as far to the right as allowed instead of to the left. However, the general way to handle this would be through a multipass algorithm of some kind.

  • Michel Iwaniec Michel Iwaniec committed [31b8a0]

    * Optimized findFirstNonBlankColumn and findLastNonBlankColumn by creating lookup tables for them

  • Michel Iwaniec Michel Iwaniec committed [f7c386]

    - Improved ShiftedColumns algorithm. Megaman now tilifies into 111 sprite tiles

  • Michel Iwaniec Michel Iwaniec committed [148439]

    * Changed the naming from 'workspace' to 'project' in menus

  • Michel Iwaniec Michel Iwaniec committed [2490e7]

    * Fixed "average sprites/scanline" calculation in cost function so that it now uses floating point division for better accuracy, and made it divide by tilification height instead of image height

  • Michel Iwaniec Michel Iwaniec committed [c9ee88]

    * Added "About" dialog and COPYING file

  • Michel Iwaniec Michel Iwaniec committed [5cc5e8]

    * Updated year in Copyright header text from 2011 to 2012

  • Michel Iwaniec Michel Iwaniec committed [6e0eca]

    - Performed a big cleanup of the code, breaking the tiling methods previously found in "tilify.py" into classes derived from abstract class 'TilingMethod'. Also renamed the tiling method "ShiftedColumns" to "DragQueen", since the former name was misleading by now

  • Michel Iwaniec Michel Iwaniec committed [1a4f5d]

    * Added a reduction pass to TilingMethodDragQueen, which repeatedly reduces the number of combinations to check until it is considered to be a "reasonable" size, at the risk of missing to check some combinations that may be the optimal.

  • Michel Iwaniec Michel Iwaniec committed [332707]

    * Changed function coverageFromTilification in c_tile.c to use abstract sequence functions instead of the list functions, as this avoids a bug in TilingMethodFullMatch with combinations being tuples instead of lists

  • Michel Iwaniec Michel Iwaniec committed [f21a6a]

    * Fixed two "obvious" bugs in TilingMethodDragQueen that was causing the "best" tilification to be erronously selected, or even not fully covering

  • Michel Iwaniec Michel Iwaniec committed [e7e96e]

    * Once again abandoned the variable-drag idea, instead focusing on minimizing the dragging by storing lists of matches

  • Michel Iwaniec Michel Iwaniec committed [adca6b]

    * Improved algorithm for finding self-matches in TilingMethodDraqQueen. They are now processed separately after the tiletable matches, by a "similariies" list which contains a list of each match that appears in several positions with the same y coord. If not at least 2 of these are found, no sprite will be fixed to this match to allow other similarities to be tested, so that we don't assume we got a good match as soon as we matched only one tile.

  • Michel Iwaniec Michel Iwaniec committed [db6ec4]

    * Changed "tile settings" command to only wipe tile table if tile width or height is changed

  • Michel Iwaniec Michel Iwaniec committed [2bedb5]

    - Modified draggableToLeft/draggableToRight to be more flexible, and made optimizeRows use the newer single-drag-functions. Megaman now tilifies into 110 sprite tiles with the ShiftedColumns method

  • MichelIwaniec committed [e8e3b5]

    (partial) Pylint code-cleanup.

  • MichelIwaniec committed [3d1b45]

    Fix broken sync. update of sprites when clicking tiles in tile table.

  • Michel Iwaniec Michel Iwaniec committed [2ca88e]

    * Bugfix: Made the 'cut spritesheet' dialog always use the upper-left corner pixel as the background color, instead of assuming it to be 0 in some of its code

  • MichelIwaniec committed [06feda]

    PEP 8 code style changes.

  • MichelIwaniec committed [ec121d]

    PyGtk to PySide2 conversion - with a few Python2 -> Python3, minor refactorings and removal of dead code slipping in as well.

  • MichelIwaniec committed [bb8f9d]

    * Improved import/export tiles dialog to have Ok/Cancel buttons, with the "Ok" button being enabled only after file selection.

  • MichelIwaniec committed [ff6f6d]

    * Fix bug with tile table clicking not working for tiles not used by any sprite image.

  • Michel Iwaniec Michel Iwaniec committed [8ba8b9]

    * Removed cropping when loading sprite images

  • Michel Iwaniec Michel Iwaniec committed [df164a]

    * Optimization: Made matchTiles function in c_tile stop matching blank tiles

  • Michel Iwaniec Michel Iwaniec committed [6a6a06]

    Bugfix to handle tilification of blank sprite images.

  • MichelIwaniec committed [ffb212]

    Changed "cost = 1000000000000.0" in TilingDragQueen to "cost = float('inf')"

  • Michel Iwaniec Michel Iwaniec committed [145dff]

    * Added functionality to export tile data in raw formats

  • MichelIwaniec committed [28d80a]

    Added an array2d class for easier indexing, and got rid of the back-n-forth pad/crop sequence in TilingMethodDragQueen __init__

  • Michel Iwaniec Michel Iwaniec committed [417770]

    * Changed project loading to default to .tpr format instead of old XML format when no suffix is present

  • MichelIwaniec committed [81bc16]

    Changed sprite tilifications to get explicitly cleared as first step of tilifying.

  • MichelIwaniec committed [27c4bd]

    * Actually show the progress bar dialog when tilifying

  • MichelIwaniec committed [4278fb]

    * Fix bug with cached sprite image being misaligned with sprite tile rectangles after updating tile settings

  • Michel Iwaniec Michel Iwaniec committed [e544d5]

    * Bugfix: Added filtering away of blank spritetiles in TilingMethodDragQueen

  • MichelIwaniec committed [e191cf]

    Updated array2d with copy methods and addition overload.

  • MichelIwaniec committed [20c557]

    * Fix PySide2 "Internal C++ object already deleted exception" when trying to import sprite sheets twice.

  • MichelIwaniec committed [dc331c]

    Changed sprite image window to use a QListWidget, supporting easy deletion + drag'n'drop.

  • Michel Iwaniec Michel Iwaniec committed [68680d]

    * Bugfix: TilingMethodShiftedRows now calculates the maximum tiles for the row correctly (was overestimated, causing redundant tiles)

1 >