Warning
Following Microsoft's decision to merge GitHub into its AI division in the summer of 2025 and therefore to consider what we publish on it only as a source of training for its models without any compensation (apart from hosting the source codes) or to bombard us with their injunctions to use Copilot everywhere, for everything and anything, I have decided to stop maintaining the repositories here.
Maintenance of this project has been moved to Codeberg at https://codeberg.org/DeveloppeurPascal/Duck-Animation-Sidaction2021
Codeberg is a community-based hosting service located in Europe that respects developers, the license of each project, and the privacy of those who connect to it.
Note
To open or work on a ticket for this project, go to https://codeberg.org/DeveloppeurPascal/Duck-Animation-Sidaction2021/issues To make a PULL REQUEST on this project, go to https://codeberg.org/DeveloppeurPascal/Duck-Animation-Sidaction2021/pulls For any other information or to contact me, you can also visit the project devlog at https://developpeur-pascal.fr/duck-journey-animation.html This code repository will be archived once the migration is complete and will no longer be updated on GitHub.
For Sidaction 2021, I took part in the Gaming For Sidaction fund-raising operation organized by the Choeur de Gamers association on Twitch. My weekend was devoted to coding video games and demos around video game development in Pascal under Delphi.
In this repository you'll find the source code for a little cartoon: a duck walking on the water of a river in the English countryside. I created it to show how to animate on-screen elements with a minimum of coding, using FireMonkey components. As we'd already played with a duck image for the rest of the weekend, I stuck with it.
Other projects that may be of interest to you also got underway over the weekend: Delphi FMX Game Snippets and the video game Ok Ducky!.
This code repository contains a project developed in Object Pascal language under Delphi. You don't know what Delphi is and where to download it ? You'll learn more on this web site.
- Promenade d'un canard (animation faite avec Delphi)
- Codage d'une cinématique avec Delphi dans le cadre du Sidaction 2021 (in French)
Follow my development streams of software, video games, mobile applications and websites on my Twitch channel or as replays on Serial Streameur mostly in French.
To download this code repository, we recommend using "git", but you can also download a ZIP file directly from its Codeberg repository.
- London map (scene 1 background) - (c) Ink drop / Adobe Stock
- The river (scene 2 background) - (c) Neilras / Adobe Stock
- The pond (scene 3 background) - (c) Bluering Media / Adobe Stock
- Duck - (c) Kenney
- Animated vortex - (c) Cartoon Smart
I use comments in XMLDOC format in Delphi to document my projects. They are recognized by Help Insight, which offers real-time input help in the code editor.
I regularly use the DocInsight tool to enter them and check their formatting.
Documentation is exported in HTML by DocInsight or PasDoc to the /docs folder of the repository.
Further information (tutorials, articles, videos, FAQ, talks and links) can be found on the project devlog.
If you need explanations or help in understanding or using parts of this project in yours, please contact me. I can either direct you to an online resource, or offer you assistance in the form of a paid or free service, depending on the case. You can also contact me at a conference or during an online presentation.
As an Embarcadero MVP, I benefit from the latest versions of Delphi and C++ Builder in RAD Studio as soon as they are released. I therefore work with these versions.
Normally, my libraries and components should also run on at least the current version of Delphi Community Edition.
There's no guarantee of compatibility with earlier versions, even though I try to keep my code clean and avoid using too many of the new ways of writing in it (type inference, inline var and multiline strings).
If you detect any anomalies on earlier versions, please don't hesitate to report them so that I can test and try to correct or provide a workaround.
This source code is distributed under the AGPL 3.0 or later license.
You are free to use the contents of this code repository anywhere provided :
- you mention it in your projects
- distribute the modifications made to the files provided in this AGPL-licensed project (leaving the original copyright notices (author, link to this repository, license) must be supplemented by your own)
- to distribute the source code of your creations under the AGPL license.
Some elements included in this repository may depend on third-party usage rights (images, sounds, etc.). They are not reusable in your projects unless otherwise stated.
The source codes of this code repository as well as any compiled version are provided “as is” without warranty of any kind.
If you want an answer from the project owner the best way to ask for a new feature or report a bug is to go to the Codeberg repository and open a new issue.
If you found a security issue please don't report it publicly before a patch is available. Explain the case by sending a private message to the author.
You also can fork the repository and contribute by submitting pull requests if you want to help. Please read the CONTRIBUTING.md file.
If you think this project is useful and want to support it, please make a donation to its author. It will help to maintain this project and all others.
You can use one of those services :
- Patreon
- GitHub Sponsors
- Liberapay
- Ko-fi in French or in English
You can buy an end user license for my softwares and my video games or a developer license for my libraries if you use them in your projects.
I'm also available as a service provider to help you use this or other projects, such as software development, mobile applications and websites. Contact me to discuss.