Zachary Lund
11c40ba6cd
Minor adjustment to code. ARB version of debug_output doesn't use GL_DEBUG_OUTPUT
2014-02-06 01:57:14 -06:00
Zachary Lund
72c156f549
Corrected a version check which caused crashes on non-4.3 profiles.
2014-02-06 01:41:55 -06:00
Zachary Lund
fe1adfceec
Broke Windows, here's a fix.
2014-02-06 01:29:07 -06:00
Zachary Lund
5c3b56807a
Fixed gl-subsystem.c to reflect changes to GL loader API.
2014-02-06 00:25:15 -06:00
Zachary Lund
019d8d83ee
Messed with GL loader some more.
...
I've branched well off of upstream glloadgen since they don't appear to be very active in between GL versions.
1) Changed how the address finder functions are set to be more sane.
2) Added *all* possible extensions. For the lulz.
3) Fixed a retarded bug in IsVersionGEQ.
4) Slapped myself for not seeing IsVersionGEQ bug earlier. Most important change.
2014-02-06 00:20:03 -06:00
jp9000
021d9522ea
Eliminate more trailing whitespace from gl-x11.c
2014-02-05 21:33:55 -07:00
jp9000
8219a64958
Remove trailing whitespace from gl-x11.c (OCD)
2014-02-05 21:31:03 -07:00
jp9000
ab4ab95790
Implement output scaling/conversion/downloading
...
- Implement texture scaling/conversion/downloading for the main view so
we can finally start getting data to output.
Also, redesign how it works a bit, it will now properly wait one full
frame for each step in the process: rendering the main texture,
scaling the main texture to an output texture, staging/downloading the
ouput texture, and then outputting that staged data. This way, the
GPU will have more than enough time to fully complete each step.
- Fix a bug with OpenGL plugin's texture staging function. Was using
glBindBuffer instead of what should have been used: glBindTexture.
- Change the naming scheme of the variables in default.effect. It's now
named with the idea of just "color matrix" in mind instead of "yuv
matrix", and instead of DrawRGBToYUV, it's now just DrawMatrix.
2014-02-05 20:36:21 -07:00
BtbN
e53825f1c3
Remove autotools files and update INSTALL file
2014-02-02 22:45:05 +01:00
Zachary Lund
cc44c93fbf
Fixed missed boolean check
2014-01-26 01:53:59 -06:00
Zachary Lund
488c90b3d2
Removed mercurial leftovers
2014-01-26 00:53:12 -06:00
Zachary Lund
666f0be14f
Merge branch 'alt-ogl-loader' of https://github.com/jp9000/obs-studio into alt-ogl-loader
2014-01-25 23:59:26 -06:00
Zachary Lund
ae17c457a7
Regenerated files
2014-01-25 23:58:43 -06:00
Zachary Lund
f4379d7889
Changed constness on passed argument, updated VC++ project files
2014-01-25 23:23:26 -06:00
Zachary Lund
1c48834cb5
Fixed signedness issue on GLX
2014-01-25 22:27:02 -06:00
Zachary Lund
469f217e6b
Removed tools used to generate the GL headers/implementations as we never use them to build
2014-01-25 22:26:55 -06:00
Zachary Lund
001f0b10a4
Fixed Windows goofy macros
2014-01-25 22:26:55 -06:00
Zachary Lund
f33e693a6e
Fixed cmake for Windows
2014-01-25 22:26:55 -06:00
Zachary Lund
74ab96a3ad
I removed GLEW, added glLoadGen (renamed to GL here), and added implementations for all platforms. Hopefully this goes better than GLAD did.
2014-01-25 22:26:43 -06:00
Zachary Lund
e3299d5662
Added rudimentary support for Qt on Linux
2014-01-24 21:55:10 -06:00
BtbN
45ec80fb7d
Full rewrite of all CMakeLists
...
CMake now works on all platforms
2014-01-24 18:56:32 +01:00
BtbN
8fa309c96e
Clean old cmake files
2014-01-24 01:46:36 +01:00
Zachary Lund
bb24591d48
Add copyright and name to files it applies to.
2014-01-11 18:09:48 -06:00
Zachary Lund
78aa456a7b
Added comments on why some code is disabled
2014-01-09 21:04:52 -06:00
Zachary Lund
d283f24cbb
A few changes concerning wxGTK.
...
For one, I added a new member gs_window for future use.
The member is "display" which represents our connection to X11.
Ideally, we should use this specific connection to deal with our Window.
For now, it's disabled. Read comment for more information.
Secondly, wxGTK apparently doesn't map our window in some cases.
This causes the window ID passed to be bad and will stop (or segfault)
our program. This might be related to the first commit above.
For now, all this commit does is realize the window manually.
2014-01-09 21:04:52 -06:00
Jim
0b7497d6df
Merge pull request #23 from Ceropean/master
...
Use XGetErrorText() instead of our own table
2014-01-07 20:18:32 -08:00
Zachary Lund
d3dab077cb
Another attempt to fix ARB_debug_output, hopefully the last one.
2014-01-07 18:24:04 -06:00
Ján Mlynek
ecadb4faae
Use XGetErrorText() instead of our own table
...
This fixes segfaults when the error code is not in the table
2014-01-07 20:35:19 +01:00
jp9000
bf371437b3
Fixed debug extension check
...
- Check the actual debug extension instead of checking GL 4.0 support;
it appears that despite having GL 4.0 support, AMD does not implement
the standard debug extensions even when the *_CONTEXT_DEBUG_BIT_ARB
flag is set on the context.
- Also, fixed a place where spaces where used for indents instead of a
tab.
2014-01-06 19:02:19 -07:00
jp9000
156009cc0c
Fixed debug GL functions on windows (amend)
...
- Removed the dependency on windows.h for windows. I feel it's an
unnecessarily large dependency to have to add to all source files
when the only thing that's needed to make the windows version compile
the debug functions is just the __stdcall call convention keyword.
On top of increasing compile time due to the large number of headers
it includes from all the windows API headers, it also adds a lot of
potential name conflicts, as I was getting a number of name conflicts
for lots of names like near/far, which were used in old legacy 16bit
windows code.
2014-01-06 17:36:19 -07:00
Zachary Lund
8073b0ecd4
Fixed APIENTRY quirk with GLEW
2014-01-06 17:51:45 -06:00
Zachary Lund
840c1cfd65
I removed GL-specific extension checking to a platform independent file.
...
I also fixed autoconf to find wxWidgets 2.9 without user intervention
Removed unused code and added more organization
2014-01-05 23:50:32 -06:00
Zachary Lund
4aef1d00d1
Change _DEBUG coverage a bit
2014-01-05 19:55:19 -06:00
Zachary Lund
fee0d9a8f3
Minor style fixup
2014-01-04 01:37:00 -06:00
Zachary Lund
8df5293be1
Added GLX version check and assures context is set to none on failure.
...
Fixed the location glewExperimental was being set to just before glewInit() (where it should be).
2014-01-04 01:29:37 -06:00
Zachary Lund
ffd80449d3
Added gl_update (does nothing for now).
...
Fix previous commit..
2014-01-04 00:50:40 -06:00
Zachary Lund
3dc2024c8f
Remove enable statements. This should be done in platform-independent code using GLEW.
2014-01-04 00:42:23 -06:00
Zachary Lund
94f88c82cf
Added OpenGL debug callback support and context changes.
...
1. We no longer hardcode a 3.2 profile. It chooses the latest profile that fits out description.
2. I added three tables and macros to help with the offsets compared to the variables to help reading. Read comments for more info.
3. I added glewExperimental being set. What a dumb "feature". It doesn't help anything...
2014-01-03 23:14:35 -06:00
Zachary Lund
9b882768be
Fixed memory leak by calling gl_windowinfo_destroy in platform destruction.
2014-01-02 18:35:10 -06:00
Zachary Lund
80b8176e29
GLX implementation and *nix-specific file handling implementation
...
I added gl-x11 which allows compatibility with X11 (Xlib-based) and GLX.
I also added various functions to handle file finding based on FHS.
Various changes to autotools to both install files correctly and to configure correctly.
2014-01-02 18:20:58 -06:00
Palana
b70df7607c
synchronize opengl context access on osx between threads
2013-12-31 18:46:19 +01:00
jp9000
e2a1186269
one of the problems of doing changes for Objective-C on windows is that you can't actually compile your code and test it before commiting, leading to foolish little errors like 'you forgot to put a semicolen at the end of that call'
2013-12-31 03:13:56 -07:00
jp9000
141b22e76e
not sure what was on my mind there but I totally got the variable names wrong in that last commit (for NSOpenGLContext update)
2013-12-31 03:12:31 -07:00
jp9000
969a71d716
call NSOpenGLContext 'update' on opengl context on macos when resizing
2013-12-31 03:09:28 -07:00
Palana
683585938c
add infrastructure for app bundle target and unmark as advanced
2013-12-30 20:52:44 +01:00
Palana
c536d70379
add support for static system GLEW to cmake
2013-12-30 05:45:19 +01:00
Zachary Lund
5f5404f8cb
Fixes issues with autoconf
...
In particular, it removes any deprecated functionality
wxWidgets only documents their deprecated m4 macros and gives a poor example
Also to note in regard to wxWidgets, I removed any unneeded libraries from the linker line.
Any warning messages provided by autoconf has been supressed in the most appropriate manner possible.
2013-12-27 16:41:01 -06:00
Palana
d9e1362cce
add pixel format check for iosurfaces
2013-12-24 17:07:58 +01:00
Palana
74aa1c466b
add osx iosurface opengl integration
2013-12-23 16:35:14 +01:00
Palana
f23bf6b83c
restore pre-c99-compatibility
2013-12-22 04:51:11 +01:00
Palana
1dde992990
remove mipmap texture filter from min_filter for rectangle textures
2013-12-22 04:47:18 +01:00
jp9000
0781670ba2
add handling of GL_TEXTURE_RECTANGLE target, and add automatic handling if using it as a sprite
2013-12-20 12:36:38 -07:00
jp9000
f41bb4b7e9
add support for texture_rect texture type in shaders, add new form, clear up a few things in the API
2013-12-20 11:58:09 -07:00
jp9000
aead95f5e3
converted project to vs2013, removed 2010 support (ugh)
2013-12-14 16:01:30 -07:00
jp9000
8dea4d60ef
add comment explaining the purpose of that line (because I noticed it was rather vague)
2013-12-13 10:32:05 -07:00
jp9000
61c6defd77
almost lured myself into another null pointer trap, fixed
2013-12-13 10:28:05 -07:00
jp9000
31dd23cb0d
fixed potential null pointer bug
2013-12-13 10:24:54 -07:00
jp9000
8298fa4dc7
With the permission of my fellow contributors, I'm switching obs-studio back to GPL v2+ to prevent issues between this project and the original OBS project, and for personal reasons to avoid legal ambiguity (not political reasons, I admittedly would prefer GPL v3+)
2013-12-02 22:24:38 -07:00
Palana
e230b0e984
updated include paths (CMake+osxtest) and function prototype (osxtest)
...
fixes compilation with changes from e5c99175c5
2013-11-29 20:58:29 +01:00
jp9000
e5c99175c5
fixed some build issues on non-windows systems
2013-11-26 23:07:27 -07:00
jp9000
409b011a8e
cleaned up main internal data structure design, changed to reference counting for sources to ensure safe destruction of source objects from all parts of the system, added some service-related stuff for testing
2013-11-20 15:00:16 -07:00
jp9000
5e33707f6a
ensure 80-column max formatting in gl-subsystem.c
2013-11-15 07:10:21 -07:00
jp9000
10e917efee
unbind VAO if NULL buffer specified
2013-11-15 07:07:03 -07:00
Palana
41bef32962
removed global VAO from gl-cocoa
2013-11-15 15:03:35 +01:00
jp9000
e778a4c04f
added OSX files to automake scripts
2013-11-15 06:40:03 -07:00
jp9000
72a64b3d41
added VAOs to vertex buffers (might need some future tweaking to check whether buffers are already assigned to specific attributes)
2013-11-15 06:34:05 -07:00
jp9000
041f48b566
make code gl-cocoa.m 80 columns for consistency (I'm probably just being OCD, don't mind me, hopefully didn't break anything)
2013-11-14 10:48:48 -07:00
Palana
ec411fe046
added cmake build files
2013-11-14 18:36:46 +01:00
Palana
d7a04aea8c
added osx cocoa support files
2013-11-14 18:31:18 +01:00
Palana
26397c7782
allow non-static glew include path
2013-11-14 18:29:37 +01:00
Palana
8880a9e811
check for link status instead of validate status
2013-11-14 18:29:37 +01:00
Palana
ebc78eee9d
do not unbind vertex array (GL 3+)
2013-11-14 17:51:38 +01:00
jp9000
f5e41f441e
added initial main program and directshow files, finally have a UI functioning
2013-11-07 16:45:03 -07:00
jp9000
37c7db5dbe
fixed some bugs and fixed a variable that wasn't declared at the top
2013-11-02 14:44:40 -07:00
Palana
db9f8cc269
restrict max_anisotropy to 1 ≤ max_anisotropy ≤ max_anisotropy_max
2013-11-02 22:24:57 +01:00
jp9000
0b96e65498
fix a function variable name that was shadowing a parameter name
2013-11-02 12:53:25 -07:00
jp9000
8847d11e8e
adjust file locations to be more portable
2013-11-01 14:33:00 -07:00
jp9000
676a0bd67d
update build system to autotools (finally)
2013-10-29 23:21:40 -07:00
jp9000
ab08c2c3f2
fixed a minor bug in the gl shader parser
2013-10-29 06:01:19 -07:00
jp9000
a43e291577
fill in the texture_setimage function, fill in a few other functions, and change certain names to be a little more consistent
2013-10-25 10:25:28 -07:00
jp9000
bb329b9278
avoid using 'default' for enum switches
2013-10-24 01:29:06 -07:00
jp9000
18834c6a45
some static analysis cleanup
2013-10-17 17:21:42 -07:00
jp9000
dfa2dc6eab
fix up the rest of the GL code, add glew to project, add makefiles for opengl, fix makefiles so that it can be built with gcc, update project files to automatically output to the build directory
2013-10-16 23:31:18 -07:00
jp9000
9570f0b8d7
change names, fix some bugs, minor GL/D3D fixes, update tests, fix effect files, output a little more debug information
2013-10-14 12:37:52 -07:00
Peter SZTANOJEV
0301b24ace
modernize header guards to #pragma once
2013-10-14 13:21:15 +02:00
jp9000
27a7873066
fix the can_render function and add in view/projection matrix code
2013-10-12 23:53:30 -07:00
jp9000
9577ddcf9b
fill in the rest of the GL functions. finally
2013-10-12 20:18:05 -07:00
jp9000
e591256922
add FBOs and render target loading
2013-10-12 16:28:10 -07:00
jp9000
83ddb920a1
finish up shader/sampler/texture/buffer loading/unloading/association
2013-10-12 12:35:38 -07:00
jp9000
aeea0eadc9
added shader attributes and added vertex buffer loading
2013-10-11 20:14:26 -07:00
jp9000
3951babc93
add GL index buffers and a few tweaks to the helper functions
2013-10-11 13:00:39 -07:00
jp9000
0a4592a414
finish up GL vertex buffer code
2013-10-11 11:41:36 -07:00
jp9000
1b3b177583
add initial GL vertex buffer code
2013-10-10 23:03:42 -07:00
jp9000
e804a9043d
fix GL pixel pack and unpack stuff
2013-10-10 18:50:09 -07:00
jp9000
85e2fc6b07
add stage surfaces and texture copying
2013-10-10 17:39:56 -07:00
jp9000
c1939de49b
added z-stencil buffers to GL and made a GS_MAX_TEXTURES macro
2013-10-10 12:37:03 -07:00
jp9000
806bf557e5
removed a fairly pointless constant for the time being
2013-10-10 07:46:27 -07:00
jp9000
d67354f53e
remove unnecessary projects from glew
2013-10-09 21:37:44 -07:00
jp9000
e159fc4f06
fill in shader parameter functions
2013-10-09 20:34:23 -07:00
jp9000
fda2ee1147
added initial GL shader code
2013-10-09 15:48:16 -07:00
jp9000
c301c9e1ef
whoops, added mul and saturate GLSL conversion
2013-10-08 15:18:33 -07:00
jp9000
34357f00fb
finish up GLSL conversion stuff and make some minor tweaks to shader parser
2013-10-08 13:36:15 -07:00
jp9000
f9d1a4b9ed
added first GLSL code, moved some graphics functions around, and adjusted some existing shader parser code
2013-10-06 18:29:29 -07:00
jp9000
fecb5578e3
woops, make sure that glDeleteBuffers gets a pointer to the pixel unpack buffer
2013-10-05 09:50:12 -07:00
jp9000
5a41589015
clean up pixel unpack buffer for dynamic textures, and add some more error handling code for other GL functions
2013-10-05 09:48:35 -07:00
jp9000
7f59eebea5
and fixed one more little bug
2013-10-05 09:42:04 -07:00
jp9000
f9c2aadf53
remove some more code duplication, fix a string, and remove a potential bug
2013-10-05 09:40:43 -07:00
jp9000
3243bfbaa3
rearrange/cleanup GL texture stuff, and fill out GL cubemap texture functions (still need FBOs)
2013-10-05 09:25:12 -07:00
jp9000
5c92f22f0d
moved some stuff around to avoid code duplication and finish up gl 2D texture code
2013-10-05 00:34:43 -07:00
jp9000
543d2481f1
move around some graphics stuff and put in copyright comments
2013-10-04 12:13:59 -07:00
jp9000
75262e6e0b
update graphics subsystem code to add mipmap support and also add initial GL texture stuff and helper functions
2013-10-04 08:55:33 -07:00
jp9000
98a74e211a
added a 'default' swap chain
2013-10-03 06:17:43 -07:00
jp9000
df58b3a9b7
made glew compile with static CRT
2013-10-02 23:15:01 -07:00
jp9000
7002821245
added GL subsystem prototypes
2013-10-02 23:14:15 -07:00
jp9000
b3b19d8216
more adjustments/fixes to windows GL initialization code
2013-10-02 23:12:16 -07:00
jp9000
d36b31d58f
fix windows opengl initialization
2013-10-02 19:50:33 -07:00
jp9000
3add91aa35
the cleanup code I was going to add isn't necessary in this function, so just make gl_platform_init function return false
2013-10-02 01:02:08 -07:00
jp9000
b97da19828
add GL initialization code for windows (so I can have something to test more easily with)
2013-10-02 00:59:06 -07:00
jp9000
67f5141dc2
add generated extension files to glew
2013-10-02 00:46:16 -07:00
jp9000
b05120ce3b
subtree merged in libobs-opengl/glew
2013-10-02 00:40:25 -07:00
jp9000
a2dce06fa8
add initial opengl files and opengl project
2013-10-01 00:29:40 -07:00
jp9000
f255ae1922
first commit
2013-09-30 19:37:13 -07:00