Jump to content

  • Log In with Google      Sign In   
  • Create Account

Promit

Member Since 29 Jul 2001
Online Last Active Today, 08:20 PM

#5271378 How Important is an Honours Degree in Games/Audio Industries?

Posted by on 16 January 2016 - 12:36 AM



It's hard to know what to say to your analogy of thinking like a child, teenager etc.  I'm not sure the way I think falls into any of those categories.  For one thing, I think of time as precious and the coming 4 months aren't so insignificant to me.  I want to do something meaningful in the time it wouldve taken to finish the degree.  I think I'm about to do more work than I've ever done and give something my all, and I don't want that something to be for purely superficial reasons e.g so I don't look like a quitter.  If an employer doesn't look further beneath the surface to see a candidates true abilities, that candidate would probably only have existed as a number in a corporate environment.  I'm a bit too free-spirited for that sort of thing anyway, so I suppose I'd be better off.  It seems there will always be a trade off between my attitude to life and being successful in life, but you've got to do what makes you happy, right?  Call it child-like or even idealistic if you will though...

It's a fun and optimistic way to look at the experience we call life, and I don't wish to denigrate your free-spirited attitude. But as an employer, I would politely show you the door. Game development is NOT the place for this. Industry projects are long term, challenging, and usually quite tedious work. Hard working employees are more valuable than those with "true abilities" - and frankly there's a healthy supply of people with both.




#5271377 Do I need a Laptop or a PC?

Posted by on 16 January 2016 - 12:19 AM

Desktops are indisputably more powerful than laptops at any given price point. Miniaturization costs money and power restrictions cost performance. On the flip side there are many capable and reasonably priced laptops out there with plenty of power, more than enough to get work done. You should work on identifying your actual needs and software requirements first, as well as your needs for laptop size, battery life, performance, etc. For the time being, it doesn't sound like you need anything outside the realm of readily available thousand dollar laptops, like an Inspiron 15" 7000 series, Lenovo Y50, etc.

 

Don't get hung up on what professionals do. When you're paid a couple hundred dollars a day, it's worthwhile for a company to spend a day or two worth of your salary to maximize your productivity. It's not unusual for pro developers to have desktop PCs that cost $3000+. It's rare to provide high spec laptops simply because most of the heavy lifting is generally done in the office.

 

Are you a student? I would not recommend not having a laptop if so.




#5270895 Why does normal mapping stop working at flat angles?

Posted by on 13 January 2016 - 11:39 AM

The actual exact reason is the lack of self-occlusion on the surface. For a true bumpy surface, as you approach shallow angles things should start disappearing behind the bumps. The moment this fails to happen, the illusion breaks down. Parallax (occlusion) mapping tackles this problem.




#5270581 RISC-V architecture and it's feasibility for games?

Posted by on 11 January 2016 - 02:47 PM

Game developers do not, by and large, care about the ISA. Most ISAs are boring minutae when you get into the real world of shipping software. We care about CPU architecture, which is far more implementation centric and can vary widely within the same ISA.

 

My short answer to RISC-V is: show me a chip, in working silicon, with all of the architectural and performance details laid out, and then we can talk. My slightly longer answer is, what does this ISA or architecture accomplish that I don't already get out of ARM, with regards to power consumption and performance per watt? The main purpose of RISC-V appears to be that it's a free open spec, which is very useful for research and entirely useless for game development.




#5269075 Google Analytics for iOS

Posted by on 03 January 2016 - 04:46 PM

I can't offer any comparisons to other options, but it's worked well enough for us and we haven't caught any flack from Apple over it. Apple doesn't offer in-app analytics. We do make note of it clearly in our privacy policy page.




#5269030 [SOLVED] Uniform buffer actually viable?

Posted by on 03 January 2016 - 11:34 AM

I'm not totally sure what the problem is- buffer updates should be a simple matter of dispatching a memcpy to the right place before draw. You complain about sizes, but have you run the numbers? 1k of uniform data times 4096 draw calls in a frame is 4 MB of uniform data, times triple buffer is 12 MB for all your uniforms. That's trivial, and I am guessing your scene is nowhere near that massive.


#5268716 Where do I get to learn about state of the art rendering techniques?

Posted by on 01 January 2016 - 11:27 AM

Mostly the thing to do is simply Google the topics and read the papers that come up. You'll usually get a mix of SIGGRAPH papers, NV/AMD slides, and GDC talks from game developers. You ahould also look at all of the SIGGRAPH proceedings for the last couple years, especially the courses on physically based shading.


#5268630 Xcode and OpenGL shaders

Posted by on 31 December 2015 - 02:10 PM

Mac and iOS use application bundles to package executables together with all of their supporting files. You need to copy the shaders into the application bundle, and then you need to find out where your application bundle is. For the first step, the easiest thing to do is simply to add the shaders to the XCode project - they will automatically be copied to sit alongside the executable. It will ignore folder structure in this case. To get a folder structure, add a folder reference to XCode.

 

Once you have the files copied in, the usual way is to use Cocoa system calls (typically NSBundle's resourcePath property) to get the path to your bundle and thus your files. This requires an objective C file, which is of course a real hassle. The trick to get around this is that you can write an Objective C implementation for a C function. So I have a header called "PlatformHelp" with a bunch of simple C styled functions inside a namespace, and then it's implemented in C++/Win32 for WIndows and ObjC/Cocoa for Mac and iOS.




#5268429 [D3D12] Driver level check to avoid duplicate function call?

Posted by on 29 December 2015 - 10:59 PM

In principle, the driver does as little as it possibly can in D3D12. Your commands go to GPU, end of story. I suspect that the story in reality is currently pretty close to that, because everything is still very new. You can never really rely on driver optimizations in the first place, unless you happen to be somebody NV/AMD are working directly with.

 

A year or two from now though, the drivers will be massively optimized for this stuff and will be playing all kinds of clever tricks. That's just how it goes. But even so, you can't rely on it.




#5268167 Need hardware recommendation

Posted by on 27 December 2015 - 09:42 PM

I'm just going to make it simple and point you to the Dell Inspiron 7000 15" as a very reasonably priced and specced laptop option. Lenovo and Asus are worth looking at as well, though I don't think their Skylake refreshes are ready yet.




#5267231 Vulkan is Next-Gen OpenGL

Posted by on 20 December 2015 - 04:08 PM


The CEO of Stardock claims the PS4 API is lower level (read: closer to the hardware, and likely faster) than Mantle and DirectX12, but hopes the PS4 supports both, for ease of porting games that will be written in Vulkan.

He claims a lot of things, but he understands less about the hardware or graphics APIs than most of the members here. I don't recommend using him as a source.




#5267216 Game loop sucking up CPU

Posted by on 20 December 2015 - 03:29 PM

Eating up the CPU is the point of the game loop. If you're rendering using vsync, that will cause it to slow down and not take up the entire CPU. But without vsync or sleeps as a throttling mechanism, taking 100% is by design. If you really want to try using Sleep as a throttle, submit very small values (like 1) and see how that works out for you. Candidly, I would only think about this as a battery life conserving mechanism, and ignore it otherwise.




#5266147 OpenGL Efficient Rendering of 2D Sprites

Posted by on 13 December 2015 - 12:26 PM

Bindless would make this whole texture atlas thing wholly unnecessary, but we're getting into very sophisticated (and audience-limited) uses of OpenGL that are probably not needed. I stream my 2D vertices into persistent mapped buffers and don't atlas anything, one draw call per element, and it's never been a problem for UI code. Atlases are definitely better, though.




#5265819 Smartphone Game Resolution Query

Posted by on 10 December 2015 - 08:49 PM

Texture compression (PVR/ASTC/etc) is always a good idea too.




#5265353 What is a suitable default value for buffers/vertex arrays/textures etc

Posted by on 07 December 2015 - 04:55 PM

Soooo long story short, don't predicate the validity or non-validity of a texture object on its GL handle. glGenTextures et al won't ever return 0, which you can use to detect errors at the point of call. Handle that appropriately, but don't use the value itself as your check.

 

 


The reason I have gotten confused is glGetUniformLocation as a location of 0 is perfectly valid. What is a good default for that, -1?

Unlike the Gen functions, glGetUniformLocation returns a signed value and -1 is a perfectly sane default, as well as the error value for the function itself.

 

All of which takes us back to the problem that the entire API feels like it was carelessly mashed together from pieces that were lying around and everyone is worse off for it.






PARTNERS