Dice, anyone?

LowPolyDice

Now that I’ve completed the low poly course from Udemy, I’m ready to start using my fledgling, but newfound skills in some form of application. That said, the most fun and easiest way that I can imagine using 3D models is in some kind of game. The question is, what to make?

If you’ve been reading this blog for a while, you may remember that I once made a dice game app called “Ship, Captain, and Crew”, based on the sailor dice game of the same name. So, I’ve decided to revamp that project by creating a 3D version of the app. Essentially, I’ll be starting from scratch, but utilizing the same game mechanics that are in the first game.

The two big things I think I will need are the 3D objects and then some form of 3D game engine to render it. Today I completed the first part, which was making the dice. It took me about an hour to throw this together, but I think it will do as a low-poly die for the game. In theory, I will just use 5 of them during the game itself.

Now the big question is what game engine to use. There may be many to choose from, but from a mobile app perspective, there seem to be only 4 that I would want to use. Of course, I’m ruling out Unity, because it is not open source. I’m trying to make an open source game, and I’d like to use open source tools so that anyone can openly tinker with it. I’m also ruling out several that work for Android, but the sdk is only available on Windows computers (irrlicht for example). That leaves the four main options of LibGDX, GoDot, Ogre, and jMonkeyEngine. There may be others, these are just the ones I know about.

So, now I need to do some research and see which one will work best for me. I’ve never made a 3D game before, so this might take a while….

Linux – keep it simple.

Tesla: Star Wars or Tron?

tesla_light

At work the other day, I got the opportunity to teach a class on inductance and resonance in relation to electronic circuits. So of course, I thought a tesla coil would be the most fun visual instrument to instruct with.

tesla_floresent

Of course, the inexpensive kit I bought off of Amazon came with a small slayer-exciter circuit, which is a little different than the traditional tesla coil circuit, since it finds it’s own resonating frequency, but it was still impressive to watch. We even burnt a few scraps of paper and then used the spark as a plasma speaker, which was pretty fun too.

We also had a few florescent light bulbs around, both straight and round. So the question became: Star Wars light-saber duels, or Tron disc wars?

Linux – keep it simple.

Convert Still Photos to a GIF or Video

smallWalk

Really just a technical note for myself. I thought I had written this down somewhere here, but I couldn’t find it, so, here it is.

Converting png to a video in Linux:

ffmpeg -framerate 24 -pattern_type glob -i ‘*.png’ -c:v libx264 -r 30 -pix_fmt yuv420p out.mp4

Setting the framerate sets the speed of the video. You can replace png with jpeg or jpg if needed. This does, of course, require the ffmpeg utility/package.

And, converting png to a GIF in Linux:

convert -delay 10 -loop 0 *.png myimage10.gif

The delay sets the milliseconds of delay between frame, so lower makes a faster video, higher makes a slower video. 8 to 10 seems about right for something that should look “real time”. This requires the imagemagick package.

Linux – keep it simple.

Low Poly Course: A walk in the park?

0175

While deeply investing my time in the study of servers for the upcoming Server+ beta test, I took a few hours to relax and made this fun low poly man walking in the park. If you are interested, you can see the video I made of it here:

https://youtu.be/jySydnNXhwU

This concluded the Low Poly course, and I really, really loved it. I can’t wait to try out some more fun stuff with my new low poly renders!

Linux – keep it simple.

QFIL Sahara Errors

wp-1582063069530.jpg

It sounds like some kind of desert problem, but QFIL is actually a tool that you can use to flash firmware on Qualcomm devices. I’ve made a YouTube video about using it as well as writing about it here on this site in the past. It’s a really simple tool to use, but it never ceases to amaze me at how much trouble it gives me every time I try to use it.

This time, I was trying to fix a BLU LifeXL and get it flashed back to stock. Unfortunately, after downloading the latest QFIL, it failed every time I tried to flash the firmware, telling me that “sahara” had failed:

ERROR: function: sahara_main:924 Sahara protocol error

Well, after spending a while fiddling with it, and searching the web, I found XDA post after post with people doing different things and solving their issues. Some had to unlock the bootloader, some had to get into download mode a different way, etc. But none of those helped me.

In the end, the real issue was that I needed to use an older version of QFIL. I started with version 2.7, but I finally got it to work by using version 2.0. So perhaps if you have a sahara error, you might check to see what version of QFIL you are using. I *think* that the old phone firmware was written back around QFIL version 2.0, and just wouldn’t work with the newer versions. But that’s the best I can figure of why it doesn’t work with the newer versions. It seems odd to me that you would need to know the specific version of QFIL needed for the specific phone firmware you have, but it seems to be the case.

Linux – keep it simple.

FreedomPop without Google Play Services?

Screenshot_20200218-071903

Using FreedomPop without Google Play Services? I have been tinkering with this for a couple days now, and I finally got it to work. Of course, I’ve mentioned FreedomPop on the website before, but for those who are new to it, here is a brief description:

FreedomPop is a wireless Internet and mobile virtual network operator based in Los Angeles, California. The company provides “free” IP mobile services including free data, text and VoIP and sells mobile phones, tablets and broadband devices for use with their service.

Essentially, it is a phone company that you can use to get free calling/texting/data. When they say free, they actually “mean” it. I wrote an article about how to set it up and actually use it for free. It even works in Alaska!

Now that I’ve gone Gappless, which I’ve been really enjoying, I thought I would switch my old backup phone to be Gappless as well. For the most part, it was just sitting in a drawer, but I keep a FreedomPop sim card in it, so if I absolutely ever needed it, it was available in a pinch. Unfortunately, it was easier said than done to use FreedomPop Gaplessly. And it is a toss up if you consider it “working”.

After setting up the APN for FreedomPop, I can connect to the network, as you can see in the picture, I have over three bars of signal, and I can initiate data transfer. I figured the app from FreedomPop wouldn’t work, since it requires push notifications through Google Services, but I did try the FreedomPop app anyways, as well as several older/newer versions of it, just in case. This is the main feature that is not working. Without the app, you can’t use your FreedomPop phone number to make or receive call and texts.

So for many, going Gappless would make using FreedomPop a no-go.

There are, however, lots of Jabber/XMPP apps that work great without Google Services, and I figured I could just use that, for which the FreedomPop sim card still works great. Essentially, it just becomes a LTE data device.

I did a few tests, as you can see above, and managed to pull a speed test as well as browse the internet for a minute or two. By the way, Google’s home page is 1.4 MB. Then I searched for a speed test, which brought me to 3.4 MB, and then I ran the speed test, which took me all the way up to 9.14 MB of data. It is noteworthy to mention that the phone believes it only used 8.92 MB of data thus far, so there is a disparity between the two. If you are using the free plan and don’t want to go over, you need to make sure you are careful about your limits and warnings you set on your phone.

So, I downloaded Xabber, one of my favorite XMPP messaging clients, and went to work. Sending and receiving messages seems to be in the low kilobyte range, which is great. In four messages, I only used 10 KB of data. The only problem is, that you are using data consistently because there is no push notification, so your phone is checking the server for messages all the time. This check seems to take only kilobytes, but I decided to let it run for a while and see how that went. After 30 minutes, it only used 110 KB of data. In theory, that is 5.3 MB per day, or 159 MB per month, when sitting idle.

Of course, you could only use the service when you want to use it, and most of the time the spare phone is at home or work, so there is a constant and available WiFi connection, which negates the need for any data at all. There are also plenty of apps that allow messaging and VOIP calls as well. Things like AnTox and Riot come to mind. I do think the whole service would be better with Google Services installed, so you can use the 200 free call minutes, and the 500 free texts as well, but it is nice to have it as an emergency phone option, and it is nice to know that you can use the data, even without Google Services.

Linux – keep it simple.

CompTIA Server+ and Low Poly People…

So, I missed a few posts over the past week or so. Actually, I’ve been really busy, but for a good cause. I’ve been fortunate enough to be selected by CompTIA to beta test the new Server+ exam. The busy part is all of the studying I am doing to try to pass the exam. I have a very short window of time in which to take the exam as well. Servers are not a new thing for me, but I have my doubts about passing the test, so I’m trying really, really hard to study up for it.

At work we use a few servers. From file hosts to PXE boot servers, but we don’t use them the way most of the IT world does. Here at work, our servers are offline and not connected to the internet at all. We manage and maintain nodes, as well as re-image them “remotely”, but by remotely, I mean that we do it in the same room from the servers to the machines. We don’t do patch management or updates, either. Some of our servers are running the same way they started out five years ago, because they are closed loop systems. Often component fail, but we don’t upgrade them, we repair them with pre-stocked and approved replacements of the exact same parts, even if those parts are no longer manufactured. Some of the motherboards and graphics cards we use have been out of production before we installed the servers. It’s just not exactly the way servers are typically used, especially in the scope of this exam.

Of course my server at home is a web, FTP, photo, and Jabber server, but I’m not sure that it’s being implemented the way a typical IT setup would be. It is only accessed by myself and my wife, and it is tied specifically to our cell phones with dynamic IP addresses. I manage users on a one on one basis, because there are only 2 users. Not your typical use case, for sure.

So, I’m doing a lot of studying. Fortunately for me, my company provides a video series specific to the Server+ exam, albeit the previous version of the test (of course, the one I’m taking is a beta, after all), which is free for me to peruse. I also picked up a Sybex Server+ book, which I’m reading through as well. Kindle readers can be really handy! If I had to order the book, I would lose a week of study time waiting for it to arrive in Alaska!

All of that to say I’ve been busy.

In the interim, however, I’ve been playing around with the Low Poly course lessons some more, and been trying to make some low poly people. There are several styles of low poly people, so I’m trying out a few of them. If you can see this posts pictures in your viewer, then hopefully you can see the little police man that I made. Well, I guess at the moment, he’s just a man in a blue shirt, but I was going to put a badge and tie on him later.

Linux – keep it simple.

Low Poly Course: A whole new world….

The title might suggest something about a princess, a monkey, a thief, and a Disney movie, but it’s not so glamorous. It’s just a low poly world I created for my low poly class. I had some fun with lighting, and it is amazing what changing the background lighting color can do to your planet.

SpaceWorld

Above is a generic lighting fading from white to black. Kind of gives it a nice “space” look. But, it seems a bit moody, so I tried some sunrise, daylight, and sunset looks:

I’m no expert, but it’s a pretty fun way to change the mood and look of the model, without changing anything else. I’m really enjoying the class so far, but I’m not far from the end of it now. I think next up is a low poly character that moves, so I’m really looking forward to that!

Linux – keep it simple.

Low Poly Course: T-Rex times four!

Hopefully above, you can see my latest creation, a low poly T-rex! I’m still taking the low poly course, and really enjoying it. Perhaps because it is low poly, it makes it a little easier to have good results, even for beginner’s like me. Above is my “square method” low poly T-rex. Here is my decimated “triangle style” T-rex:

Not too much difference, although the triangle style does have more menacing looking teeth. For fun, I then made this “high poly” version by subdividing the square version:

And then I decimated the high poly model, as per the instructor’s suggestion in the course. It made for an interesting low poly/high poly mix:

In all four versions, I used the same colors, the same lighting, and as close to the same position/camera angle as I could. One interesting note about the decimated high poly model – it was really difficult to color it. When I would go into edit mode to select surfaces to color, it would look “high poly” again, but when I would select vertices, and went back to paint it, it was “low poly” again. So, I realized I forgot to apply my decimation. So it was showing the decimation, but it was not applied to the model. So, apply, apply, apply. That’s my lesson learned for the day!

Linux – keep it simple.

Low Poly Course: 2 different ways to model a dog…

Boxer_2

Okay, so the next part of the course is creating some low poly animals. I made these two dogs using two different methods. The square-er looking one was modeled using blocks and shapes and transforming them. The less square looking one was made with the sculpting tool, cutting or adding to the base shape.

Boxer_1

The instructor’s dogs came out much better looking, to be sure! I also branched out a bit and did a different dog than the pattern he used in the course, because I wanted to try something else. Overall, I like the squarer looking one, kind of has a “cute” look to it and it reminds me of several cartoon dogs. The sculpted one, however, leaves a lot to be desired.

Just so you know, I don’t think it’s the instructors fault my sculpted dog came out looking funny, I think you can just tell that he has a lot more finesse and experience with sculpting. It is definitely an art form that requires practice. Lots and lots more practice….

Linux – keep it simple.