Welcome, Guest
You have to register before you can post on our site.



Search Forums

(Advanced Search)

Forum Statistics
» Members: 41
» Latest member: Joachim
» Forum threads: 151
» Forum posts: 485

Full Statistics

Online Users
There are currently 20 online users.
» 2 Member(s) | 18 Guest(s)
Brian Beuken, GSalvato

Latest Threads
Cube OpenGL ES 2.0 exampl...
Forum: Getting Started
Last Post: GSalvato
46 minutes ago
» Replies: 1
» Views: 13
Chapter 7 Assets
Forum: Fundamentals Errata/Questions
Last Post: Brian Beuken
Yesterday, 08:28 PM
» Replies: 16
» Views: 217
OpenGLES3.0 causes flcker...
Forum: Help my code won't work??
Last Post: Brian Beuken
Yesterday, 06:22 PM
» Replies: 3
» Views: 21
Asus Tinkerboard
Forum: Other SBC's
Last Post: Brian Beuken
02-17-2019, 02:27 PM
» Replies: 9
» Views: 1,076
Make sure you update and ...
Forum: Getting started
Last Post: jomoengineer
02-15-2019, 08:02 AM
» Replies: 1
» Views: 50
So....what do I do?
Forum: Getting started
Last Post: Brian Beuken
02-13-2019, 09:10 AM
» Replies: 10
» Views: 2,240
Reviewing the code
Forum: Scratchpad Games
Last Post: Brian Beuken
02-13-2019, 12:53 AM
» Replies: 1
» Views: 75
If your trial has run out...
Forum: Getting started
Last Post: Brian Beuken
02-11-2019, 10:08 PM
» Replies: 1
» Views: 39
Finally have a machine
Forum: OpenGLES3.2 Shaders
Last Post: Brian Beuken
02-11-2019, 11:51 AM
» Replies: 6
» Views: 843
Rock Pi 4
Forum: Other SBC's
Last Post: Brian Beuken
02-10-2019, 02:32 PM
» Replies: 4
» Views: 357

  Orange Pi One Plus
Posted by: Brian Beuken - 01-31-2019, 10:29 AM - Forum: Other SBC's - Replies (4)

This has been in the drawer for some time, but its time to look at it again as its one of the 1st H6 boards which become available and of course H6 means we have OpenGLES3.0+ possibilities..

Basically a chip replacement for the small form OrangePi One which has an H3, this big brother has 1GB of ram and that H6 with a T720 "multi" core GPU, no idea how many cores, but we've done nice things with dual cores, so lets assume that. Not sure its still currently in production but you can pick it up very cheap ~$20 from AliExpress which is OrangePi's main outlet.
I've been quite harsh on OrangePi's support in the past but even though its still hard to get what you want it does look like they are making a bit more effort, their site is quite well organised now and they do seem to be keeping a decent number of OS's on tap in an easy to find format. It also gives you an insight into just how many of these boards they churn out. 
22 different boards are currently listed... Not all are in still in production though (I assume) but its quite a wide range and they are cheap.

Debian Jessie is available, so I'll install that, and get back to you when I've had a chance to try it out this weekend.

Print this item

  More boards are now on the market
Posted by: Brian Beuken - 01-31-2019, 09:57 AM - Forum: OpenGLES3.0 Shaders - Replies (4)

I've not had a proper chance to give much coding advice on 3.0 or 3.1 or 3.2 but there has been a real boom in the last year of boards coming on the market which have the capability to run 3.0+

Sadly of course many of these boards don't actually have drivers to run even 2.0 but its starting to come through. I suspect strongly (but I honestly have no insight here) that Raspberry Pi4 will feature OpenGLES3.0+ so its going to be a big leap in terms of what you can do with your graphics.

But a word of caution.. Though for sure we can do more and there are some optimisations possible, we still only have a limited number of cores on our SBC GPU's so for the most part we will find things easier to do, but performance won't be massively improved (though there are some clear performance boosts), the best performance gains will come from letting the GPU handle things itself and avoid feeding it as is often the case 2.0. 

A few boards that we should look out for include

The Tinkerboard has now reached a quite stable level of support with drivers now available and it is a nice system it certainly handles 3.0, but 3.1 and 3.2 should also be possible (drivers!!!)
The Nano Pi T4/M4/Neo4 range... lovely machines, and very affordable, software is still a little behind and the OS can crash, but it is codeable
The RockPro64  one of several RK3399 based SBC(like the nanopi's) I don't have one yet but it looks like it has good support.
The RockPi4 hard to get hold of at the moment and I don't have one yet but I'm hearing nice things, though can't be 100% sure of CPU drivers
Any Allwinner H6 should have at least 3.0 but good luck finding an OS with drivers, I'm looking at you BananaPi and Orange Pi, though I'm sure Armbian will get there soon.

Print this item

  3Dbase code [Chapter 6]
Posted by: GSalvato - 01-28-2019, 11:31 AM - Forum: Fundamentals Errata/Questions - Replies (9)

probably is my fault but I'm unable to find the 3Dbase code.
Could point me towards the link?


Print this item

  Not a bot - but a book reader
Posted by: Ian_ - 01-12-2019, 04:12 PM - Forum: General Chat - Replies (1)

I was, waiting . . . for the email . . . 

Just bought the book. Not really a Windows user and don't think that I will be using Visual Studio any time soon, if ever. So will glean what I can from the reading.

Generally looking to improve my C and gain an insight into a little C++ and rudimentary gaming technique along the way. My background is largely in Unix/Linux, with bash, AWK and C; spending time with a collection of Raspberry Pi, and Arduino nano clones.

Increase in registrations not necessarily from RPi sales, but book sales perhaps.

Print this item

  Issues with GLM?
Posted by: Brian Beuken - 01-07-2019, 03:46 PM - Forum: General Chat - No Replies

From lesson 10 onward we are using a maths lib called GLM, but it has come to my attention that GLM does not compile under the standard C++11 compiler settings we have for our projects.

You therefore need to set C++14 instead, that may not be currently clear on your version of code:blocks, it will depend on when you updated your version and when you updated your compiler tools.
Generally speaking though if you go to, build options, and tab to Other options, you can add -std=c++14  and all should be well. you can probably untick the Have G++ follow the C++11 standard opion on Compiler flags as that will now get overridden. Newer versions of Code:Blocks will also allow you to tick a box to select C++14

If you happen to have an older version of GLM on your system, you can continue to use C++11, we're not really using many specific C++11 functions just some things are quicker to initialise and access with C++11, and C++14 gives the same options

Lesson 10 has been sent to MagPi and should be on the Github now, with a default setting for C++14

Print this item

  Costly Software?
Posted by: Brian Beuken - 01-03-2019, 02:02 AM - Forum: Scratchpad Games - No Replies

Very happy to see another good review on Amazon.co.uk 4* from a reader called Lee

I hope he comes to the forum soon, as there's an error in his review which states that the software we use can cost 100's or 1000's of pounds after 30days.

This isn't the case, VisualGDB is indeed only free for 30days but the cost of the basic Linux version thereafter is 89euros ($109), with a 50% discount for students or academics, that really is a fair price for the massive boost in productivity it gives you.

But even if you don't want to use VisualGDB, I have detailed elsewhere how to use Visual Studio with Linux Dev (free for the community version of VS) so you can still work on a target system for no money.

I hope Lee joins us soon so we can show him how to code for free.

Btw if anyone else has bought the book from Amazon or an online bookseller, a review (even if you didn't like it, feel free to be honest) would be much appreciated as it helps to spread the book around and lets people get a better idea if its the book for them.

Print this item

Posted by: Brian Beuken - 12-27-2018, 02:38 PM - Forum: Assets, Tools, Libraries and other useful things - Replies (2)

NEON is a specialised optimisation system which allow the CPU to load in multiple chunks of data at a time and perform staggeringly fast maths on them by doing the same instructions on multiple values in parallel. Not as fast as a GPU but still quite a bit faster.

NEON is the ARM method, and its available on almost all modern ARM SBC's, SIMD is the intel version on a select few SBC's.

Now the fact is, I don't really get too involved at the lower end of a system, I have too many to keep track of, but it should be possible to get the compiler to optimise some of our code, especially the maths libs (though they may already do so) by asking the compiler to use NEON where viable.

This is no where near as good as writing your code with NEON in mind and using some of the specific NEON instructions, but it might provide a nice little boost if your project is maths/physics heavy and you find the performance is just missing the frame rate you need.

You need a post 2015 version of GCC on your system, and all you have to do is add  -mfpu=neon -ftree-vectorize to your gcc compile options.  (you can leave out the -mfpu=neon, but I found it reported much fewer instances were it could optimise). You also need to set the optimisation levels to 3 with -O3 
My compiler  CFLAGS currently looks like this.

-ggdb -ffunction-sections -O3 -std=c++14 -mfpu=neon -ftree-vectorize -fopt-info-vec-optimized

I have NO IDEA, at the moment what performance gain you will get, if any, but I hope that bullet, maybe PhysX and GLM will get some benefit from it. I will try to pop back to this sometime and give better guidance on how effective this turns out to be!

You can see if any optimisation is taking place by adding -fopt-info-vec-optimized  to your compiler commands (it does slow the compile time though) and reading the output.

This is quite advanced stuff and you need to really understand a little about registers and parallel processing, there's some decent info on the web and this I found quite helpful.

Print this item

  Latest GLM updates will not work on C++11
Posted by: Brian Beuken - 12-27-2018, 02:13 PM - Forum: Fundamentals Errata/Questions - Replies (2)

Ah its sad day, but one that has to come sometimes. There is an issue with the latest updates of the GLM libs which we need to take account of, it may cause some problems on some SBC's depending on the version of GNU Compiler they have access to.
I've tested most though and they are fine so far.

GLM no longer works on C++11 so you need to compile using C++14. None of the code actually changes in any way, its just that the 2 versions of C++ have slightly different understandings of the keyword constexpr const which is used in GLM
The current build of GLM is built to C++14 standard and therefore if you try to build with C++11 you get a whole screen-full of warnings and errors.

The fix is just to ensure you build with C++14

Alas poor C++11, just as I was planning to learn how to use you, you were replaced Wink

Print this item

  Wow, Christmas really brings out the spammers
Posted by: Brian Beuken - 12-27-2018, 01:17 PM - Forum: Scratchpad Games - Replies (2)

The amount of attempts to register has shot up this Christmas holiday, not quite sure why but its up to 20-30 a day at the moment, they are all bots, or spammers pushing viagra or some other nonsense, its much more than the usual 3-5 I normally get per day. Some are even braving the delayed moderation forum, where its possible to post, but I clean them up most evenings.

This means I need to get a bit tougher with them, rather than just refusing to activate I'm starting to ban their IP's, its a bit more time consuming but it should reduce the traffic as they tend to come from a few stock IP addresses (nearly always Russian).

Its very very unlikely that a genuine request to join will get stopped by a banned IP, but if it does, (and I am hoping the ban doesn't stop you reading this), just locate my email on the main site and let me know. I promise I'll un-ban you and get you on the site as soon as possible.

Print this item

  Merry Christmas
Posted by: Brian Beuken - 12-25-2018, 03:48 PM - Forum: Scratchpad Games - No Replies

Its that most wonderful time of the year.....when you get a new SBC

Have a great holiday period and if you got my book as a pressie... I am sorry, but maybe we can make it work out Big Grin

Print this item