Projects Panel

Projects:
Showing posts with label gamedevnotes. Show all posts
Showing posts with label gamedevnotes. Show all posts

Tuesday, 3 October 2017

Github Pages, Part One - Simple Setup (with pictures!)

The blog formerly known as TheOddDolphin stumbles into IdeaTown. Weak, and hungry, it staggers into the town square, looking for something that will sate its unending thirst. "Content," it mumbles under its breath. "Need... content." All of a sudden, it spies the perfect target. Easy to demonstrate, simple to write about, extensive support framework so that the blog itself doesn't need to deal with reader's queries. Tongue lolling, the now actively salivating blog runs off behind the topic of Github Pages, knives out and ready to make a sacrifice to its strange and oppressive god.
In this new series of posts, I intend to run through the development and deployment of a static website on Github Pages, mostly to remove some of the taboos surrounding static website development, which I believe can be as good as (and sometimes more suitable than) dynamic websites for web pages in certain cases.

I also want to make fellow college students aware that something like Github Pages even exists. Too long have I watched them pay incredible amounts of money for hosting. I want them to know that with Github Pages, they can finally make a page that's as stripped down, simplified, and easy to load as their wallets.

EDIT: I think it would also be suitable to note here that Bitbucket, another popular repository hosting site, also offers the same hosting service. The major difference is that Bitbucket repos are private, and allow only up to 10 contributors in their free plan. I have used Github Pages here, but feel free to take a look at this page for instructions on how to set up a Bitbucket website.

The purpose of this introductory post is to run you through the setting up and initialisation of a PERSONAL Github Pages repository, something which the official Github Pages page already does more than admirably, so if you're looking for a good tutorial, follow that instead. If, for some reason, you find that tutorial too hard to follow, then this guide is fine, I guess. I'm mostly just setting up the scene for other stuff later, so if you're interested in the rest of this series of posts, then I suggest you follow along with this as well.

Setting up a Repository

The first thing you're supposed to do on your path towards greatness is set up a Github repository. Go to Github, create an account, and then create a repository. The name of the repository must, for some reason, be <your-username>.github.io, and this will also end up[ becoming the url for your Github Page website, so if you picked a silly username when creating your account, feel free to kick yourself now.

Below are the options I ended up with - nothing really new here. Note that I chose not to initialise the repository with a README.md, which isn't really standard practice. If this is your first experience with Git, I suggest you do so.


Get Git on the command line

This is really more of an intermediary step than anything, but it is critical that you actually have Git in order to work with Github Pages - it's the version control software through which all updates to your potential website will be maintained.

Ubuntu users, as always, have the handy apt-get command:
sudo apt-get install git
Whereas Windows users will have to get the immensely useful Git Bash.

If you're a Mac user, you are probably rich enough to pay for hosting will have to take a look at an external resource to find out how to install Git, like this one.

Clone the repository you just created

If you carried out the previous step correctly, then this one is fairly easy. Navigate to a preferred storage location on your hard disk, and clone the repository onto your hard disk. If you installed git properly, this is the command you must put into your bash terminal:
git clone https://github.com/<your-username>/<your-username>.github.io.git
Here's what I had to input, for example:
git clone https://github.com/clennam/clennam.github.io.git

Create a test file 

Now you've cloned the repo into your hard drive. You shouldn't have much in there already, seeing as you just cloned an empty repo.

Create a simple html file, so that we can push it and see if our brand new site works as advertised. You could open a text editor, create an html file, and save it into the repository folder, but you can simplify all this into one step on Ubuntu and Windows by doing this right from the command line:
echo message > filename.html
Or, in my case:
echo This is a test message > index.html

Commit and push the files

Our setup is all done, it is now time to push the files to the local git repository, and from there, send them to the online repository that we created.

This is really simple in practice, although there is quite a bit of complex theory behind it. The commands you need to run, in order, are:
git add .
git commit -m "Initial commit"
git push -u origin master
 

 yey.jpg (ironically, the picture attached is a .png)

You're all done! Check if your new site is set up properly by going to the URL <your-username>.github.io. Here's what I got:
Take it as a keepsake of our beautiful time together.
Watch this blog for the next post in this series, in which I continue exploring the possibilities of this platform.

Friday, 21 April 2017

Everything of Note From GDC 2017

Author's Note: This is the text of an article that I originally wrote to be published on ReadMe. Unfortunately, I did not manage to get it published in time, and due to the timely nature of the subject, it is now too late to do so. In case you, dear reader are interested, here you go:

Everything of Note from GDC 2017
The Game Developers Conference took place this year from the 27th of February to the 3rd of March at the Moscone Center in San Francisco. The conference brought out many innovations, especially in the fields of graphics and AR/VR, with speakers from giants in their respective fields – Facebook, Oculus, Google Play, AMD and NVIDIA, to list a few, speaking on several aspects of game development – game development, game promotion, game design, audience engagement and growth, and so on. Several indie developers also announced exciting new projects. Furthermore, this was the first GDC that was open for the public to attend, instead of having to watch from home, so there were much larger crowds than usual.

Here is a list of the most interesting announcements from the Conference.

The State of the Game Industry
Every year, the organisers of the Game Developers Conference poll attendees in an attempt to identify emerging trends in the field, which they subsequently release in a document titled “The State of Game Industry”. The key points from this year include:

  • ·         Diversity

This year’s GDC showed a slight improvement in representation, with 20% of attendees polled identifying as women, 2% up from last year.
The geographical locations of attendees remained mostly the same, however, with 67% percent of respondents from North America, 3% from South America, and 22% from Europe. Pan-Asia accounted for 8% of attendees, and 0.3% percent were from Africa.

  • ·         Business-wise

Most attendees felt that VR/AR was the future of gaming, with mobile AR as a specific focus going forward, with as many as 1 in 10 game makers working on a platform-exclusive VR/AR title, and 75% of attendees saying that they believed VR/AR had long-term sustainability.
The ESports industry is also on the rise in terms of investor confidence, with 90% of attendees professing confidence in its sustainability.
PC and mobile devices remain the mainstay of most developers, however.

  • ·         Platforms and Hardware

On the topic of VR consoles, the HTC Vive was gaining popularity over the Oculus Rift. Don’t worry, though – the stats read 24% for the Vive, and 23% for the Rift, with the PSVR coming a distant third at 13%.
In the mobile arena, Android finally surpassed IoS in terms of developer interest (54% against 51%).
Interest in mid-cycle console re-releases, like the PS4 Pro and Xbox Scorpio, however, was mediocre at best, with many developers feeling that it would only further divide an already fragmented market.

Innovations in VR/AR
  • ·         On the first day of the conference, a slew of new games was announced for VR devices, specifically for the Rift. These new games ranged from traditional first-person experiences to a wide variety of genres – strategy, tactical, turn-based, dungeon crawler, story-driven, procedurally generated, the list goes on.
  • ·         Microsoft announced plans to bring “mixed reality” headsets to the Xbox and Microsoft Scorpio by 2018.
  • ·         Oculus also made a surprise announcement – they would now sell the Oculus Rift and Touch in a bundle that comes to around $600, a price drop of about $200. On their own, each piece of hardware is about $100 cheaper, coming to $499 for the Rift headset and $99 for the Touch controllers. Hats off to Oculus for their efforts to make VR software affordable to a wider audience.
  • ·         AMD have announced that they will be working with Valve to support Valve’s Asynchronous Reprojection on their graphics cards, a technology meant to enhance the VR experience and eliminate judder – a partnership that is a big win for AMD, who have been losing the graphics market share to NVIDIA.
  • ·         Epic Games have announced their Unreal VR Editor, a ground-breaking extension to the Unreal Engine that allows developers to be in the environment that they are developing, helping to provide the right sense of scale to make realistic, believable environments and make it easier to navigate the environment while developing.


The GDC Awards
On the 1st of March, the Game Developers Choice Awards and Independent Games Festival Awards took place at GDC. Many much-loved indie games and many bigger, AAA-standard titles competed for the coveted awards. A quick recap of the more popular/controversial picks from the GDCA:

GDCA
  • ·         The Game of the Year award went, unsurprisingly, to Blizzard’s new title Overwatch. They single beat out other nominees like Naughty Dog’s Uncharted 4, and Bethesda/Arkane’s Dishonored 2.
  • ·         Niantic’s Pokemon Go won the Best Mobile/Handheld Game award. The previously almost unknown studio beat out Supercell’s Clash Royale and companion Pokemon title Sun/Moon, by Game Freak/The Pokemon Company.
  • ·         One of the controversial picks, No Man’s Sky won the Innovation Award, the troubled game from developer Hello Games.


Friday, 7 April 2017

Twine, why can't I quit you?

Twine, why can't I quit you?
A short story in which I anthropomorphise my experiences writing interactive fiction for pleasure, with specific focus on Twine

Twine.
A tool that I have run into, fallen in love with, subsequently learned to hate, come back to after a couple of months apart, and learned to hate again.

Surprisingly enough, the above paragraph isn't a paragraph from an amateur writer's first attempt at a dating sim using Ren'Py. Twine, and the aforementioned Ren'Py, are both tools designed to write interactive fiction, shortened to IntFics in the community, which is comprised of people that fit in between the line that divides writers that want to add a layer of interactivity to their work, and programmers that want to tell amazing stories with little to no effort. But this one post, this one's all about you and me, Twine. Don't say I never write you love prose.

Just like a real relationship, when I met Twine, we just clicked. Everything was effortless, easy, smooth. We bonded over paragraphs as I admired the simplicity of her hooks, and realised I loved her when she showed me how easy it was to move from one passage to [[another]]. She was simple and straightforward and perfect. I knew it was a dream that could not last but I cling to the memories of our first days of innocence. They are one of my most cherished memories.

But then, as the weeks turned into months, the cracks in our effortless relationship begin to show. She never communicates efficiently. Getting audio out of her is an incredibly daunting and painful process. She's got a jealous streak, and refused to hang out with my best pal JQuery. My creativity was outrunning her ability to cope and it was stressing us both out.

It was then that I started to cheat. I'm not proud of it, but I refuse to make any excuses. I dabbled in other areas. Had a brief but passionate affair with Ren'Py, then pretended to be something that I wasn't in order to flirt with Inform 7. I left my love at home to find comfort in the arms of others, and this was the last straw. We took a break, and Twine left me for the first time. Dejectedly, I deleted the scraps of projects we had worked on together, the last memories of our time together, and tried to pick myself up.

Months down the line, I found Twine again. I was at the time at a loose end - a wreck. I had broken it off with Inform after we just failed to click on any level, and Ren'Py left me by the wayside when she discovered that I just offered too little for her to take me seriously (apparently she only dates serious creatives, that are, like, also artists.) I had also dabbled in polyamory - HTML, Javascript and PHP. All of them were about a decade older than me, but don't be fooled - they're still perky enough to keep you up all night. Despite JQuery's warning, I gave them a try. Six months into our relationship, they cut me out, but we decided to stay friends. We still share awkward smiles when we meet around town.

When I met Twine for the second time, she'd grown a few versions, changed her looks a little. We met up for coffee, and talked about what was going on in our lives. We laughed about my messups in love. She opened up again, just as easygoing and friendly as before, and in a matter of minutes I was hooked again. We ended up going back to her apartment that very evening and doing something we has never done before: we had some hot, steaming CSS, and that was when I knew she was the one for me, that however difficult she became, she was worth it.

Over the next few weeks, we had a casual relationship, meeting almost every evening. I came to learn every part of her body, from <header> to <footer> to <tw-passage>. We became comfortable with each other, but not so comfortable that our relationship became boring. We kept each other on our toes; there was always a spark keeping things interesting.

Then things got serious again. We moved in together, started up a project. I used all my knowledge from a year of screwups to keep us together, and this time, we did.

Saturday, 4 February 2017

A look at Unity and UE4 from the perspective of a complete gamedev noob.

As promised, here's the gamedev note on Unity and UE4 :)

Tea or coffee?
Cats or dogs?
Black or white?
Unity or Unreal Engine 4?

These are the questions that have plagued man since the dawn of time, with the possible exception of maybe the last one. And the answer sort of lies in personal preference. So, dear reader, how do you like your caffeinated water/animal companions/arbitrary colours/free game Engines? Here's my short take on it.

I've got about a year of experience in Unity, so I'd like to think that I'm fairly competent in it, however, I have to admit that I'm far from it. Over the past week, I installed Unreal Engine 4, for the heck of it, just to take a look, and was completely blown away. One of the major advantages that UE4 has over its competitor is the sheer amount of out-of-the-box support that it offers completely new users. I was able to set up a first person controller in minutes, via a drag and drop operation. To do the same thing in Unity, I spent twenty minutes finding a decent tutorial, and ended up following a sixty-minute tutorial on how to fire lasers with a LineRenderer instead in order to set up a halfway-decent one that didn't use deprecated syntax. Another big plus was the ability to run tutorials in-editor (a major godsend - no more concentration-breaking Alt-Tabbing between the Editor and a Youtube window every few seconds. However, a scrollbar and some resizability options should be added to the tutorial window so it doesn't take up more than half of the 3D Viewport when you're following it.

Of course, this isn't to say that there aren't any problems with UE4. I do see some potential difficulties in changing the existing resources so that they'll work the way you want them to, if your intended purpose is outside the very narrow limits set by the blueprints you're using, given that I've been doing tutorials for the better part of a week, and I'm yet to see a single line of code. In Unity, I was set up and coding within two hours of starting the very first tutorial.

All this is not to say that either engine is inferior. I'm simply stating the facts as I see them, from the perspective of a complete newbie. I'm sure that, to an experienced developer, the choice between Unity and UE4 is pretty arbitrary, but to me, a guy with barely two and a half games under his belt, UE4 is the clear winner when it comes to support for new users. Don't crucify me for expressing an opinion.

Given the simplicity afforded by UE4, I'm even considering making a simple FPS demo myself, maybe with a friend to make some simple models for me. Expect to see some work on props and such soon!