Language Selection

English French German Italian Portuguese Spanish

Developing A Game Engine with Perl

Filed under
Development
Gaming
  • Developing A Game Engine with Perl : Part 2 - Mouse Input | Shawn [blogs.perl.org]

    Let me start by saying.... I DO NOT KNOW WHAT I AM DOING.

    Literally, developing a game engine is not on my resume... yet! So any code or ways of doing anything you read here, is just what I've figured out and works for me, which by no means should suggest to you that it is the proper way to do what ever it may be. Please consult your local guru first.

    OK, now that we have that established... Please consider the following as entertainment and should you learn along the way with me, that's wonderful!

    Now, by the time of writing this article, I am several months into this undertaking. I'll describe in future posts what the engine is capable of, but for today, let me tell you about what happened over the last 2 weeks. I will likely break them up into separate posts for easier consumption.

  • Developing A Game Engine with Perl: Part 3 - Hardware Failure & Server Upgrade | Shawn [blogs.perl.org]

    It's been a while since I've had to look at system logs in Linux OpenSuSE. I used to remember just doing a tail -f /var/log/messages or what ever log file you wanted to watch. I guess at some point since then they switched to using systemd journal service and you can now view everything using journalctl

  • Developing A Game Engine with Perl : Part 4 - UEFI vs OpenSuSE Installer | Shawn [blogs.perl.org]

    This is where things get interesting. After finally getting the computer together, I downloaded the OpenSuSE ISO for 64bit. I went with Tumbleweed again. It worked well with the last server, so I'll just go with what I know. Tumbleweed is a rolling release linux, which means I shouldn't have to reinstall when a new version is released and I should still stay up to date. I created a bootable USB from ISO in Ubuntu 20.04 (My Desktop). Booted the new computer, installed OpenSuSE, and was happy... until I tried to reboot.

    When I rebooted, I pulled out the USB stick and the BIOS said no boot drives. I knew of UEFI, and started reading. I found that in /boot/efi/ there was no EFI directory. If you don't know anything about UEFI (No worries, neither do Sleepy ..apparently there is supposed to be a Fat32 partition marked as type EFI. The BIOS checks for this location and attempts to load the OS this way as apposed to using the MBR for booting like in the old days.

  • Developing A Game Engine with Perl: Part 5 - 32bit -> 64bit & Perl's Storable | Shawn [blogs.perl.org]

    After doing some quick reading, I came to understand that Perl uses architecture specific ways to save content to files when using Storable. Specifically if you use lock_store and store. These are part of Perl's core system and what I use throughout the engine for working with the file structure.

    I had to carefully re-read the perldoc's to discover that you can avoid architecture incompatibility by simply using nstore and lock_nstore The method you use for retrieving the stored files doesn't matter, only when storing the data into files does it matter.

    I tried to find ways of being able to convert the stored files from 32bit architecture to 64bit, but ultimately the only real option was to use the old server to re-store the files with lock_nstore.

More in Tux Machines

New Theme Brings libadwaita’s Sleek Looks to Older GTK Apps

This third-party theme back-ports the bulk of the libadwaita stylesheet to a regular GTK theme that works with GTK3 apps. As this theme is under active development you can’t be too picky if there are a few unpadded highlights or errant pixels; it’s not a 1:1 clone of what you seen in GNOME 42 screenshots (or any GTK4 libadwaita apps you currently use) but it’s a close enough approximation. Also: this is purely superficial; you won’t magically find GTK4 features, widgets, or animations nestled inside your GTK3 apps. Read more

Chrome and Mozilla: Privacy, Net Neutrality, and Firefox Changes

  • Google Just Gave You the Best Reason Yet to Finally Quit Using Chrome

    Ultimately, that change in the way Google is looking at Chrome--that it isn't a tool that serves its users, but is a tool that serves up users to advertisers, albeit in a slightly more privacy protective way--is a bad sign. It's also the best reason to finally ditch it altogether.

  • In California, an Important Victory for Net Neutrality

    Today, the Ninth Circuit court upheld California’s net neutrality law, affirming that California residents can continue to benefit from the fundamental safeguards of equal treatment and open access to the internet. This decision clears the way for states to enforce their own net neutrality laws, ensuring that consumers can freely access ideas and services without unnecessary roadblocks. Net neutrality matters, as much of our daily life is now online. It ensures that consumers are protected from ISPs blocking or throttling their access to websites, or creating fast lanes and slow lanes for popular services.

  • How to restore Firefox's classic download behavior

    Mozilla plans to change the download behavior of the Firefox web browser in Firefox 97; this guide helps restore the classic download functionality of the browser. Firefox users who download files currently get a download prompt when they do so. The prompt displays options to open the file using an application or save it to the local system. Starting in Firefox 97, Firefox is not displaying the prompt anymore by default.

This week in KDE: Getting Plasma 5.24 ready for release - Adventures in Linux and KDE

Plasma 5.24 is almost ready! I mentioned last week that I haven’t been posting about fixes for regressions in 5.24 that never got released, because there would be too many. Nonetheless people have been working very hard on this, and we’re down to only 7, with two of them having open merge requests! Working on those is appreciated, as it helps improve the stability of the final release in a week and a half. Read more

Open Hardware/Modding: Olimex, Arduino, and More

  • iMX8MPlus-SOM is alive and boots!

    This board development started in April 2021 and finished August 2021 but the semiconductor shortages didn’t allow us to test the prototypes until recently. We assembled 4 boards and all theyare alive and boot.

  • Arduino Portenta gets an LTE Cat. M1/NB IoT GNSS shield - CNX Software

    Arduino PRO Portenta family of industrial boards is getting a new LTE Cat. M1/NB-IoT GNSS shield that adds global connectivity and positioning capabilities through the Cinterion TX62-W LPWAN IoT module by Thales.

  • Long Range Burglar Alarm Relies On LoRa Modules | Hackaday

    [Elite Worm] had a problem; there had been two minor burglaries from a storage unit. The unit had thick concrete walls, cellular signal was poor down there, and permanent wiring wasn’t possible. He thus set about working on a burglar alarm that would fit his unique requirements. An ESP32 is the heart of the operation, paired with a long-range LoRa radio module running at 868 MHz. This lower frequency has much better penetration when it comes to thick walls compared to higher-frequency technologies like 4G, 5G or WiFi. With a little coil antenna sticking out the top of the 3D-printed enclosure, the device was readily able to communicate back to [Elite Worm] when the storage unit was accessed illegitimately.