Hi, there's a standard Makefile inside the src/ subdirectory, you must run make from within this folder. It's the same as Linux platform
Recent community posts
32-bit version won't run due to architecture mismatch. Make sure everything in its path is 32-bit.
Without having your project (source code + assets) I can't guess why it's showing a blank screen. Please attach a download link to your project so I can take a look. You can register for free to the forums, there you can attach files and benefit from the Tilengine community:
This error is due to mixing 32 and 64 binaries. Make sure that Tilengine.dll and SDL2.dll you put in the same folder than the executable file match the CPU architecture.
gcc in windows can only generate 32-bit binaries, that's why you get the linker errors when trying to link to 64-bit version. There's something called mingw64 that can work 64-bit binaries, but for my daily tasks I use Tiny C Compiler that supports both architectures, has small footprint and mostly a drop-in replacement for gcc:
Here you can see a screenshoot building test sample:
- tcc builds correctly for both 32-bit and 64-bit bit
- gcc builds correctly for 32-bit but fails for 64-bit
Tilengine itself doesn't require any special hardware. You need SDL2 for the window, but that's an optional component. Going to the metal, your target hardware should provide a 32-bit RGBA framebuffer and video output bus. The Paspberry Pico doesn't have one. There are some high-end microcontrollers with framebuffer and video, but most common configuration is to use a specialized display controller with external RAM and a bus. So, if you ever manage to build an embedded system with such configuration and over 500 MHz CPU clock, you could compile and run Tilengine on it without any OS.
You will need an OS -be it Unix/Linux, Windows or whatever- to run any general-purpose application like an editor or an emulator. You go to the metal in plain C on a microcontroller when you do application-specific firmware tied to a particular hardware design. I'm sorry you don't like the idea of using a general OS to run applications, but it's how things are since the early 70s :-)
The platforms you're proposing are too constrained, not for Tilengine itself, but even for the kind of "editors" you want to run on them. They're just microcontrollers with memory in the order of kilobytes -not megabytes-, and don't have display buses. All display kits for these devices are based on slow serial buses, so their screens are really small, mostly character based. So there's no way to use a microcontroller board as a general purpose development platform, they're simply not designed for that.
I would try the Raspberry Pi Zero (https://www.raspberrypi.org/products/raspberry-pi-zero/). It's a humble platform but powerful enough to use it a s a general purpose platform, if you stick to lightweight applications. I use a Raspberry Pi 3 classic (2016) that is more powerful than the Zero, but not much more, and it can run Tilengine samples 420x240 at 60 fps without stressing the CPU.
Please tell what OS version are you using (Windows, Linux...) and a step by step sequence of what you're doing to try the samples. Does it give an error or just shows a black screen? Are you executing inside the correct folder so it can find the assets?
Dear buyer! Sorry to hear that. I cannot handle refunds myself, it's the itch.io platfrom who manages payments. Yo must contact them here: https://itch.io/docs/legal/terms#refunds and ask them a refund for your wrong buy. When they will contact me to authorize the refund, I'll give them permission to procedd.
Yes, you must provide libpng and zlib and place their headers and binaries in the expected folders (see visual studio project properties). Alternatively, you can download them here already prepared and just drop them inside source project.
This is not a bug. You can still download source code from GitHub, setup dependencies and build the binary yourself for free. However, for accessing packaged prebuilt version with required dependencies, a small amount is asked. This was changed some months ago.
Thanks for your interest!
This reply is one year old. Back then, downloads were subjected to a voluntary donation. But I changed this some months ago, and now prebuilt binaries require a minimum fee of 5€ (not a fortune either), to support the project and at least cover hosting costs.
So you have two options:
1. build yourself from source,
2. kindly donate and get the binaries you expect to work :)
Yes, I've considered it already. However, Travis CI doesn't support building for i686 or ARMv7 architectures (Raspberry Pi), and AppVeyor required to bundle external dependencies (SDL2 and libpng development libraries for Windows) inside the repository, something I don't want to do. I tried to export 64-bit Linux build on Travis with curl to a ftp server I have, but it failed most of the times, it's a documented limitation it has. So I ended up with a Raspberry PI and VM for linux and OSX, each one with a script that pull sources from GitHub, builds and sends the result to my ftp server. It's really just a couple of minutes.
I've checked Tiled repository and took a look to travis.yml and the deploy scripts to butler. They're a great example to follow in case I want to send at least Linux 64 and OSX builds directly to itch. I didn't know about GitHub actions. At this moment I'm more focued in finishing the main documentation of Tilengine, that's the big hole in my project.
Thanks a lot for your kind help, and congratulations for your Tiled editor! It's an outstanding tool and a key piece in Tilengine functionality.
Release 2.6.0 added support for 24 and 32 bpp png files. However keep in mind that they must have less than 255 unique colors each. Tilengine renderer is designed around 8-bit indexed color images used in pixel art and won't load true color images if they have more than 255 colors.
I don't have first hand experiencie with this mingw64 tool so I can't give you advice. You can build tilengine samples with mingw32, visual studio community, or get support for mingw64 in its official forum about how to use it:
This is the link in the pascal game development forum thread where the wrapper was announced and posted:
And this is the link to the original commit by his author, turric4n:
BTW, nobody should be forced to use a commercial application to develop free and open source software. Delphi should be discarded for this task.
You're right! But the truth is that the Pascal wrapper was submited once by a contributor, and then he abandoned it. I don't know Pascal/Delphi and I'm sure it's a great language, but I cannot maintain the binding. Someone else with Pascal knowledge should be in charge of it, and that would be appreciated. And the same goes for the Lua/FFI binding: submitted once, then abandoned.
Hi Dariusz! 32-bit image support would be a nice feature indeed, and I considered it some time ago. The problem is that the entire rendering pipeline is done in 8-bit indexed mode -there are some intermediate buffers to determine visibility and some effects-, and it's just in the last step that the palette color is fetched and set to the final. So it's not possible to feed the input of the pipeline with direct RGBA colors, because they don't fit. There may be a compromise that is 32-bit images would go directly to the framebuffer, bypassing the intermediate steps, but that would result in severely reduced feature set compared to regular 8-bit images, and that's not what people may expect... what do you think?
This is common to all itch.io platform. In the main Tilengine page, there's a blue button that says "Download". A pop-up appears, asking you for a donation, and a link to bypass it and go straight ahead to the files. Select whichever option and you'll get a list of links to download for your specific platform.
I've checked your asset. It's 256 colors, but the transparent color you want (I guess it's pink sky) is not located at palette index 0, but in the middle of the palette, that's why Tilengine doesn't show transparency. Transparency is based in palette index, not in RGB color value.
OpenTK is a C# binding for OpenGL, that is a low-level graphics API for 3D hardware. It doesn't provide the abstractions for tiled backgrounds, layers, sprites and so that Tilengine offers, so you'll have to build them yourself on top of OpenTK to get a similar functionality. But if this is easy to implement for your project, go for it!
You say you've found a bug regarding the viewport and tilesets. Would you provide sample source code and/or assets to check it? If you really have found a bug, I cannot debug and fix it without reproducing it first...
Thanks for your feedback and good luck too!
Tanks for your feedback!
Tilengine works exclusively with indexed color graphics with 8-bit palettes (up to 256 colors). It uses color indexes inside a palette, not actual RGB values. Transparent color for sprites and tiled backgrounds is always index 0, this is how actual 2D graphics chips used to work and cannot be changed.
It seems that you're exporting 32-bit RGB images from Gimp, not the indexed ones required by Tilengine. They will show ok in Tiled editor, but not in Tilengine. The transparent color attribute in Tiled is only ised by Tiled itself to composite the image, but it has no meaning for Tilengine. Please take a look at this link from the Gimp documentation:
As a working reference I also recommend you to open the assets provided in tilengine samples (/samples/assets folder) in Gimp, because they have the expected format.
Let me know if you have success!
A sprite pack is usually comprised of two files: a single graphic file containing many related pictures together, and a text file describing where are located every picture. Just downloading a single large pack is not enough, rectangle coordinates for each sub-picture are required.
I don't know what you did wrong without taking a peek at your project. However keep in mind that tilengine is a graphics engine to program video game graphics with it, it doesn't provide any ready-made assets collection, only the assets used by the examples themselves. There isn't any sonic sprite pack, you have to build your own.
Updates are more frequent in GitHub project, I only update packages here on major revisions. Is your development project stuck because Tilengine has closed parts? If so let me know. However you're always free to chose another library that better suits your needs. What is of "no point" for you may be very different for other people.
I've setup a new project in GitHub to show, with progressive updates, how to build a 2D platformer prototype in tilengine using python.It uses some raster effects in the background layer to enhance depth.
Project site: https://github.com/megamarc/TilenginePythonPlatformer
Youtube playlist with the updates: https://www.youtube.com/playlist?list=PLzPKer9_vLya43h9JhLRTtIPktuBnrA1G
The beautiful graphic assets were created and freely released by two registered creators in itch.io: