Jump to content
  • Advertisement


  • Content Count

  • Joined

  • Last visited

Community Reputation

5011 Excellent

About NightCreature83

  • Rank

Personal Information

  • Role
  • Interests

Recent Profile Visitors

30947 profile views
  1. NightCreature83

    Choosing DLL to use depending on OS version

    Well this is the first time you mention you need the codecs in this thread so I could not have guessed that, this is gamedevelopment after all and in most cases you would just need the D3D api. You are using the wrong sections out of the Media Foundation library to support windows 7. And if you are not developing a store app, you can just use the windows 7 api on win 8 and 10.
  2. NightCreature83

    Choosing DLL to use depending on OS version

    Why are you using MMF where you really want to use DirectX?
  3. NightCreature83

    Choosing DLL to use depending on OS version

    If you look at the documentation it mentions that the minimum client support is windows 8 which means you should not be using this in Windows 7 at all. Besides writing your own device manager is not that hard and requires about 100 lines of code.
  4. NightCreature83

    Starting in the Field Right Out of College?

    It seems the entry level jobs are much simpler to find in the EU, basically any ad on a companies webpage that doesn't specifially asks for a timed amount of experience is a entry level job. I just found about 5 of these in 5 minutes just now. I used https://www.gamedevmap.com/ this to actually find my first job, just write the companies directly with your cover letter and CV. One thing though looking for a job around May-October is hard because lots of graduates have just sent in their CV to all these low level job roles.
  5. NightCreature83

    Starting in the Field Right Out of College?

    It's not a rare thing to land a game development job as a programmer out of University, I did the same however it was with an MSc. It all depends on the places you apply too and if they are willing to take juniors or not. Just be aware that you are going to learn more in your first year on the job than what you did in Uni. Also be prepared to hit the ground running, and be prepared to be productive within 1-2 months of starting. Usually if you cant make that you wont survive your probationary period. Portfolios help because they show off what you can do. You could try seeing internship levels of applications too these usually lead to junior contracts if you can handle the workload. What I wouldn't do is get a QA job at a games company and try and move up to programming through that route, this is usually even harder than just applying.
  6. NightCreature83

    Is it possible to program fbx model reader in VS2017?

    This article from Microsoft seems to indicate it should work as 2017 is binary compatible with 2015 https://docs.microsoft.com/en-us/cpp/porting/binary-compat-2015-2017 Mileage on this might vary though because MS sometimes does break compatibility even within a VS release cycle.
  7. Use index 2 because in computer science we start counting at 0. Also rememeber that the faces are in the cubemap as you render into them so if you have face 0 be positive Z axis that is the image you will get back
  8. Have a look at https://github.com/NightCreature/SpaceSim/blob/master/SpaceSim/Graphics/RenderSystem.cpp and function initialiseCubemapRendererAndResources. This initialises a cubemaps and SRVs and RTVs for use in a cubemap renderer, were the target and resource are cubemaps but are rendered to as single target RTs. This is D3D11 but I have a feeling this will extend into D3D12 too.
  9. NightCreature83

    Question about Font and Text in Direct3D

    You can just z test the stream of characters so turn depth test enabled on for text rendering
  10. NightCreature83

    NVIDIA Optimus enablement

    They actually have dedicated output paths to HDMI, so in the case of the hybrids they all run the external outputs over the iGPU which adds a frame delay to the frame being rendered. Also there is no 1060m NVidia did away with the mobile lineup and just sticks desktop grade chips in the laptops now (maxwel2 already paved the way for that its why a 970m is so powerful and is actually comparable to a 960 desktop chip). For video and display purpose this doesnt matter that much but for VR it does because the tracking needs to match the frame rendering. This is why its important that if you have a laptop and you want to buy a VR kit you check its VR Ready.
  11. NightCreature83

    NVIDIA Optimus enablement

    You can see here that the NV chip is not connected to any real outputs and as mentioned earlier the OS fakes all of this stuff for you. I did a dx diag on a desktop PC and the "Device Type" lines dont show up in that log, which to me means all devices in there are Full devices. Besides you dont really want to transport your framebuffer over PCI-E to display each time. If the GPU is used as GPGPU you dont need it to output anything that is true but its also most likely not doing rendering work at that moment in time. My NV 970M GTX says the same thing Render-Only Device, this means that most things work but stuff like VR is impossible. It can render everything but the latency of the VR kit itself is so bad you cant use it.
  12. NightCreature83

    NVIDIA Optimus enablement

    As Hodgman mentioned earlier in an Optimus setup there are no outputs bound to the dGPU they are all bound to the iGPU, this is also why VR doesnt work on these kinds of cards. And why we are now getting laptops like we had in the past that have direct connections again. Can you list what dxDiag says if it tells you the NV chip is render only it has no output things to enumerate.
  13. NightCreature83

    C++ Overloading Question

    If you pass primitive types by value to a function const is not needed on that parameter. The code outside wont see any changes you make to the parameter anyway.
  14. NightCreature83

    NVIDIA Optimus enablement

    In DX11 and upwards you dont need optimus or the amd equivalent to select the graphics device, you can actually detect if the device has dedicated memory assigned to it, if so its a dGPU. When you select your DXGI adapter pass this to the Device construction function and you will always select a dGPU. The following piece of code shows you how to achieve what that article is listing for D3D11, with the exception that it will accept a NVidia or AMD chip as the rendering adapter. IDXGIAdapter* adapter = nullptr; IDXGIFactory * pFactory; HRESULT hr = CreateDXGIFactory(__uuidof(IDXGIFactory), (void**)(&pFactory)); if (hr == S_OK) { for (size_t counter = 0; hr == S_OK; ++counter) { adapter = nullptr; hr = pFactory->EnumAdapters((UINT)counter, &adapter); if (adapter != nullptr) { DXGI_ADAPTER_DESC adapterDesc; adapter->GetDesc(&adapterDesc); if (adapterDesc.VendorId != 0x8086) { break; } } } pFactory->Release(); } Within windows the DX11 adapter selection will respect your choice, the only thing the preferred GPU setting in NV control panel does is list the NV GPU first in the adapter list which works for applications that always choose adapter 0. BTW: VedorId 0x8086 is Intel you can find AMD (0x1002 this is actually ATI) and NV(0x10DE) on google easily
  15. NightCreature83

    Naming convention on interfaces in C++

    Underscores are evil and should never be used in anything, camelCase for the win. That being said do what you like in your own projects and stick to your own conventions. When working in another project were you are collaborating with other people conform to the convention of that code base or agree on a common convention and stick to that. I have worked in a few code bases that use C and S for classes and structures in the naming but dont use this in the filenames and just use the logical name of the class. Personally I have the C, S I and other sort of Hungarian but not really prefixes, I much rather see sensible names for variables and classes so I can at a glance see what they are supposed to do, or at least give me a clear idea of what they should do. Making code readable and understandable is far more important than sticking to a particular way of casing or pre/post-fixing names or Hungarian coding. Besides a good IDE will actually show you what type something is when you hover over it when you need to know it.
  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!