Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-06-30Fix T51721: OpenGL Detection is broken on WindowsDalai Felinto
Now computers that support OpenGl3.3 (but not 4.5) can run Blender 2.8. For any given HDC, you may only call SetPixelFormat *ONCE* any future calls for the same HDC will fail. And computers that would support only OpenGL 3.3 wouldn't have a change to get a valid OpenGL context because the pixelformat was already set while trying to probe the supported contexts. We fix this by splitting the final context creation from the query of supported OpenGL versions. Patch by Ray Molenkamp (bzzt_ploink/LazyDodo) with code style fixes and comments by me.
2017-04-22OpenGL: remove use of GLEW MXMike Erwin
MX (Multiple conteXt) support was dropped from the GLEW 2.0 library to make core profile support cleaner. Our WITH_GLEW_MX build option was OFF by default already; this commit removes the inactive code paths. I'm working on a plan for multiple GPUs, contexts, resource sharing, etc. This commit gives us a cleaner starting point for that upcoming work. Tested on Mac, will test on Linux & Windows immediately after pushing.
2016-08-09OpenGL: debug context on WindowsMike Erwin
Enable based on --debug-gpu at the command line. Linux already works this way.
2016-06-09BGE: alpha on frame buffer and precedence of MSAA over swap.Benoit Bolsee
A new option '-a' can be passed to the blenderplayer. It forces the framebuffer to have an alpha channel. This can be used in VideoTexture to return a image with alpha channel with ImageViewport (provided alpha is set to True on the ImageViewport object and that the background color alpha channel is 0, which is the default). Without the -a option, the frame buffer has no alpha channel and ImageViewport always returns an opaque image, no matter what. In Linux, the player window will be rendered transparently over the desktop. In Windows, the player window is still rendered opaque because transparency of the window is only possible using the 'compositing' functions of Windows. The code is there but not enabled (look for WIN32_COMPOSITING) because 1) it doesn't work so well 2) it requires a DLL that is only available on Vista and up. give precedence to AA over Swap copy: Certain GPU (intel) will not allow MSAA together with swap copy. Previously, swap copy had priority over MSAA: fewer AA samples would be chosen if it was the condition to get swap copy. This patch reverse the logic: swap copy will be abandonned if another swap method (undefined or exchange) will provide the number of AA samples requested. If no AA samples is requested, swap copy still has the priority of course.
2015-11-22Error out on Windows if driver does not support OpenGL 2.1 with an errorAntony Riakiotakis
messagebox.
2015-07-20Pixel format selection now favours a format with a number of samplesAntony Riakiotakis
closer to the one requested on Windows. Patch D1384 by Benoit Bolsee.
2015-02-27Compile fixes for mingw64Joshua Leung
* m_hDC was always included after m_hWnd in all the constructors and other functions, but the order was reversed in the struct, meaning that they would not get initialised correctly * Got rid of the gotos for the error handling case in initializeDrawingContext() This was causing "jump to label ... crosses initialisation" errors for the calls to get GL version string info (i.e. const char *vendor = ...; etc.) I wasn't sure if those glGetString calls needed the rest of the context to be defined first, so I decided to leave them where they are now, and got rid of the gotos (which were making this particular piece of code a bit confusing) instead. TODO: There are still a bunch of warnings about around 660, which I haven't managed to solve (but at least they won't prevent Blender from compiling) narrowing conversion of '(stereoVisual ? 1063 : 1061)' from 'int' to 'DWORD {aka long unsigned int}' inside { } is ill-formed in C++11 [-Wnarrowing]
2015-02-25Warning messagebox for windows when an unsupported implementation ofAntony Riakiotakis
OpenGL is detected: Hoping to decrease the frequency of by far one of the most frequent bug reports by windows users. There is some reorganization of the GHOST API to allow easy addition of further OpenGL options in the future. The change is not propagated too deep to keep the size of the patch managable. We might reorganize things here later. For OpenGL we do two checks here: One is a combination of GDI generic renderer or vendor microsoft corporation and OpenGL version 1.1. This means the system does not use GPU acceleration at all. We warn user to install a graphics driver and of cases where this might happen (remote connection, using blender through virtual machine) The other one just checks if OpenGL version is less than 1.4 (we can easily change that in the future of course) and warns that it is deprecated. Both cases will still let blender startup correctly but users should now have a clear idea of the system being unsupported. A user preference flag is provided to turn the warning off. Now stop posting those bug reports without installing a driver first - please?
2015-02-23Debug GPU functionality from soc-viewport_fx by Jason WilkinsAntony Riakiotakis
patch number D706 with changes: - WITH_GPU_DEBUG just creates a debug context (and enables the debug messaging system functions) but leaves the checks we had intact. Old patch added the debug functionality only if we had the flag on to save some performance. Rationale here is that we might not want to recompile blender just to get the extra information, and having users start blender with a -d flag to get the extra information is also useful for bug reports. Those checks already existed and most expensive ones are hidden behind a debug mode check so performance should not be that bad. - Did some cleanup of existing functionality: When things go wrong blender side, just print the error, don't check for GL errors first. - Did not port changes needed for GLES to regular glew.h - Got rid of duplicate or very similar new functionality. Generally, code is more moving things around/cleanup and should work exactly as before apart from the debug context, so it's safe to add even now. It also provides a nice substitute function for glu error descriptions
2015-02-08GHOST: fewer virtual functionsMike Erwin
Reined back over-use of virtual functions in GHOST, especially in "leaves" of the inheritance hierarchy. This eliminates vtables for many classes and (in some places) turns virtual function dispatch into direct function calls. I'll be around to fix things if other coders think this change is too much. Still lots of virtual in GHOST_TaskbarWin32 since it just loves virtual.
2014-10-08Ghost Context RefactorJason Wilkins
https://developer.blender.org/D643 Separates graphics context creation from window code in Ghost so that they can vary separately.