All Activity

This stream auto-updates     

  1. Past hour
  2. Today
  3. Looking for tips in 3D

    Ask this question in the "Graphics And GPU Programming" forum. It is a complex topic and worthy of a discussion by it'self.
  4. 2D software neutral book

    Thanks, but it's too fragmented. I'd like to buy 1 book, not 10s.
  5. Anime Maker

    thankyou correct, specially for those who want to sell they anime, should be aware of copyright of the material they use.
  6. 2D software neutral book

    https://www.ctrlpaint.com/ Books and videos. He works in Photoshop but explains every thing in details so you can use it in any software.
  7. Anime Maker

    This is illegal. Will also result in bad quality productions. It is actually good, so don't harm your software by telling it's users to steal.
  8. 2D software neutral book

    Yes, I'm looking for a 2d graphics book, but it has to be software neutral: I should use it with either photoshop, gimp, krita, paint.net, etc.
  9. 2D software neutral book

    What doe these words mean, are you looking for books on 2D graphics? Please elaborate on what it is you want to do so we can help you.
  10. Anime Maker

    Anime Maker is an ultimately simple and but powerfull crossplatform software to create animated cartoons and anime.Download your favorite anime fanworks (characters, backgrounds) from internet, then open them with Anime Maker to create an Anime from them!Anime Maker offers shot based timeline management with 27 image layers, simple BONE ANIMATION for moving your heroes, dozens of effect including fire, water, snowfall, fountain, and refraction. Make your own anime for amatheur or professional movie competitions! Create your own ultimate fanfictions from your favorit anime, impress your friends, create your own anime seasons for televisions, or video sharing sites! Your career as an anime artist starts today! Anime Maker offers all the feature that required to create an anime, including the folowing: - Time-line and shot based video edition with copy/paste/delete abilities - Support for bmp, jpg, png formats with alpha map, and automatic alpha-map generation - 27 independent graphics layer to create your movie - 3 sound channel on the timeline - Wav and ogg files for audio - Mouse and touchscreen for input - AVI video export with antialiasing - x86 and ARM based computers and mobile phones - Windows, Linux and Android compatibility - 8 invididual bones on all layers, with 4 joints each - Real time motion movement recording for realible animation - Dozens of fire and particle effects with your own textures - Layer refraction effects (water waves, etc) - Anime Maker supports multiple CPU cores for great performance - Dedicated mouth speak layer management - More stable than video software usually - Very small memory footprint, and powersaving - Ability to morph, move, resize, color, blend your layers in real-time - WYSIWYG editor: what you see is what you will get on export - Supports cutting exported video into multiple files - Tooltips as easy usage guide - Instant start and quit - Multimedia cacheing to avoid memory waste - 16:9 ratio with custom shot sizes optimized for Anime - Colored and shadowed subtitles download: http://AnimeMaker.tk http://gerigeri.uw.hu/animemaker/index.html
  11. Debate: Proper Time For Microtransactions?

    As a artist I wish this was true. Art in games is just feedback, like sound. I agree cosmetics have a huge effect on the game, just not primary, but why would they not be forgivable? Is expecting payment for hard work not forgivable? Implementing digital art is as difficult to do as implementing real world art. A digital card for a digital game is in fact more expensive to make that a real world one. As your paying the artist, a programmer and have to maintain a game. The problem I see with micro-transactions is that players don't realize the money is paying for the game. They buy a cosmetic item and think they are paying for that item. So we as developers have to make them think that the item is worth buying, this leads to items that effects game play. Developers should just put little cards in the shop for players to buy, cards named "Want servers to run smooth? $5", "Want us to add more content to the game, show interest $1", "Want more guns? $2.50 towards guns.", "Want more characters? $20" and "Fully animated and detailed hero characters $60". Instead of selling stuff the players could use. Then developers could use the money made from the cards to cover the costs of making these things and give them to all the players when done.
  12. C++ Combat System

    Even with a specific questions, unless someone has mostly exact that code, and is willing and allowed to share it, you won't get any. Instead of aiming at writing the game, I'd start with simple experiments, eg noizex has pointed out a possible weak spot, so test if you can make it work, by writing mouse gesture code that outputs the gesture it detected, with a simple printf or whatever you do to get output in Unreal. By doing a few of such experiments in small areas of the game, you get useful snippets, and experience how to make them. Not sure how useful snippets are in the real game, as there are likely a lot of things that need to be addressed that you omitted in the snippets.
  13. When you created your descriptor heap how many records did you give it ?
  14. I am sorry for my late response, but I was out of office. I did not have the time to read the presentations you linked, but I will read them this weekend. I could solve my performance issue. In my game engine, I check all installed graphics adapter and I use the one with the highest memory and the highest possible Feature Level. As it turned out, my testing laptop gave the same result for all graphics adapter although an Intel HD 630 chip is clearly weaker than my GeForce GTX 1050 Ti chip. I adjusted the system settings and now everything runs smooth. VSync was turned off. In my main menu, I had around 2 ms per frame, because no 3D models were rendered. When I used a more complex scene in my game, the GPU needed 80 ms per frame. Therefore, I had lag. Using the correct graphics chips, the GPU was reduced by a factor of 10 to around 1 ms per frame in my default case and around 10 ms in very complex scenes. I will update my FAQ, so all players know about this issue.
  15. HLSL Geometry Shader issue

    Maybe it just needs the standard hlsl packing rules. So your structure would have to be a multiple of float4 in size, and each inbuilt structure bigger than a float or int should start on a float4 size boundry. (although uint2 or float2 might be okay on a float2 sized boundry ?)
  16. HLSL Geometry Shader issue

    If you got a device removed, then it's likely that the GPU or driver crashed on you. You can try to confirm this by running on another GPU if you have one (you can try using enabling your integrated Intel GPU if you're on a desktop), or by selecting the WARP adapter. You may also want to try compiling as gs_5_0 instead of gs_5_1 and seeing if the generated DXBC is any different. I've seen a few bugs specific to the *s_5_1 profile, mostly around arrays. Or of course you can always move on to the new fancy new shader compiler, and see if that works better for you. EDIT: I also assumed that you've already run with the validation layer enabled, and checked for errors. You can also try enabling the GPU validator, since that can potentially catch some issues that aren't caught by the normal validation layer.
  17. SFX Looking for free Professional Sound Effects ?

    Oups something went wrong ! Thanks for letting me know ! The link is http://www.ogsoundfx.com I just corrected it in the post. Sorry about that !
  18. Hello, http://www.ogsoundfx.com link is broken, redirects to http://www.ogsoundfx/
  19. Hello everybody, 5 new video are available on my youtube channel: -Video 4 Candy's Space Mysteries- | -Video 2 Lights of Dreams IV- | -Video 3 Candy to the Rescue IV- -Video 13 Candy World II- | -Video 3 Candy Racing Cup- | -My Xilvan Design Youtube Channel- Thanks for Watching! Friendly, Xylvan, Xilvan Design
  20. Update v0.4.4 alpha: New: [Win32] Implemented argument parsing for WinMain and wWinMain Fixed: Corrected small things for doxygen Changed: Renamed CopyAFile to FileCopy Changed: Renamed DeleteAFile to FileDelete Note: Next update while take a while, because i want to get the linux implementation to the same level as the win32 implementation.
  21. So, I've been playing a bit with geometry shaders recently and I've found a very interesting bug, let me show you the code example: struct Vert2Geom { float4 mPosition : SV_POSITION; float2 mTexCoord : TEXCOORD0; float3 mNormal : TEXCOORD1; float4 mPositionWS : TEXCOORD2; }; struct Geom2Frag { float4 mPosition : SV_POSITION; nointerpolation float4 mAABB : AABB; float3 mNormal : TEXCOORD1; float2 mTexCoord : TEXCOORD0; nointerpolation uint mAxis : AXIS; float3 temp : TEXCOORD2; }; ... [maxvertexcount(3)] void GS(triangle Vert2Geom input[3], inout TriangleStream<Geom2Frag> output) { ... } So, as soon as I have this Geom2Frag structure - there is a crash, to be precise - the only message I get is: D3D12: Removing Device. Now, if Geom2Frag last attribute is just type of float2 (hence structure is 4 bytes shorter), there is no crash and everything works as should. I tried to look at limitations for Shader Model 5.1 profiles - and I either overlooked one for geometry shader outputs (which is more than possible - MSDN is confusing in many ways ... but 64 bytes limit seems way too low), or there is something iffy that shader compiler does for me. Any ideas why this might happen?
  22. No. My thoughts were that cosmetic microtransactions are not forgivable compared to ones that affect in-game functions like mechanics. Most people believe that they do not affect gameplay when it's far from the truth. Graphics is the primary function of a video game. Without it, it becomes a text game. Every color, shape, and texture determines how someone experiences a game. Some will increase said pleasure or entertainment, which is a major reason why we play video games in the first place. Cosmetic microtransactions do, in fact, affect gameplay as much as purchasing guns or characters, if not more.
  23. Alright, I took a long hiatus because I was tired and starting to feel burnout. Now I'm back and ready to give this final push that is needed. First thing first, I have a steam store page set up! Which is good, now people can wishlist the game. Currently I'm at 69 whislist which is too low. I need at least x100 that, so a lot of promotion needs to happen. The other thing that comes with the site is that now I have a shipping date: February 22nd. It might change based on toehr releases, but I think it's a pretty good estimation for realease, and I definitely need to have finished by that date. I thought having a site would bring a good ammount of people to visit my site, but that was not what happend (at least in my experience). I had a lot of exposure the first couple of days (around 400+ people per day) but then it fell to around 10 to 20 per day. Which is very little. Here's the graph: The 2 spikes that you can see are some flux I managed to bring based on some reddit comments, but the wishlist number did not increase those days, so basically I didn't bring customer's eyes to the site. Anyway. Currently I'm working on a couple of game breaking bugs that have been bothering me for years but I haven't had the chance to fix them. Wish me luck.
  24. Let's create WebGL examples for practice

    WebGL 1.0. Drawing multiple triangles with random colors https://jsfiddle.net/8Observer8/g87rvebk/ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>WebGL 1.0. Drawing multiple triangles with random colors</title> <style> #renderCanvas { border: 1px solid #aaaafa; } </style> </head> <body> <canvas id="renderCanvas" width="250" height="250"></canvas> <script> var vertexShaderSource = ` attribute vec2 a_Position; attribute vec3 a_Color; varying vec3 v_Color; void main() { gl_Position = vec4(a_Position, 0.0, 1.0); v_Color = a_Color; }`; var fragmentShaderSource = ` precision mediump float; varying vec3 v_Color; void main() { gl_FragColor = vec4(v_Color, 1.0); }`; var gl = document.getElementById("renderCanvas").getContext("webgl"); var vShader = gl.createShader(gl.VERTEX_SHADER); gl.shaderSource(vShader, vertexShaderSource); gl.compileShader(vShader); var fShader = gl.createShader(gl.FRAGMENT_SHADER); gl.shaderSource(fShader, fragmentShaderSource); gl.compileShader(fShader); var program = gl.createProgram(); gl.attachShader(program, vShader); gl.attachShader(program, fShader); gl.linkProgram(program); gl.useProgram(program); function getColorArray(num) { var arr = []; var r = Math.random(); var g = Math.random(); var b = Math.random(); for (var i = 0; i < num; i++) { arr.push(r, g, b); } return arr; } var firstTriangleCoords = [0.0, 0.5, -0.5, -0.5, 0.5, -0.5]; var secondTriangleCoords = [-0.9, -0.9, -0.5, -0.9, -0.9, -0.5]; var thirdTriangleCoords = [0.9, -0.9, 0.9, -0.5, 0.5, -0.9]; var fourthTriangleCoords = [0.9, 0.9, 0.5, 0.9, 0.9, 0.5]; var fifthTriangleCoords = [-0.9, 0.9, -0.9, 0.5, -0.5, 0.9]; var firstTriangleRandomColors = getColorArray(3); var secondTriangleRandomColors = getColorArray(3); var thirdTriangleRandomColors = getColorArray(3); var fourthTriangleRandomColors = getColorArray(3); var fifthTriangleRandomColors = getColorArray(3); var verticesAndColors = firstTriangleCoords .concat(secondTriangleCoords) .concat(thirdTriangleCoords) .concat(fourthTriangleCoords) .concat(fifthTriangleCoords) .concat(firstTriangleRandomColors) .concat(secondTriangleRandomColors) .concat(thirdTriangleRandomColors) .concat(fourthTriangleRandomColors) .concat(fifthTriangleRandomColors); var floatArray = new Float32Array(verticesAndColors); var vbo = gl.createBuffer(); gl.bindBuffer(gl.ARRAY_BUFFER, vbo); gl.bufferData(gl.ARRAY_BUFFER, floatArray, gl.STATIC_DRAW); var a_Position = gl.getAttribLocation(program, "a_Position"); gl.vertexAttribPointer(a_Position, 2, gl.FLOAT, false, 0, 0); gl.enableVertexAttribArray(a_Position); var FSIZE = floatArray.BYTES_PER_ELEMENT; var a_Color = gl.getAttribLocation(program, "a_Color"); gl.vertexAttribPointer(a_Color, 3, gl.FLOAT, false, 0, FSIZE * 30); gl.enableVertexAttribArray(a_Color); gl.clearColor(0.9, 1.0, 0.9, 1.0); gl.clear(gl.COLOR_BUFFER_BIT); gl.drawArrays(gl.TRIANGLES, 0, 15); </script> </body> </html> WebGL 2.0. Drawing multiple triangles with random colors https://jsfiddle.net/8Observer8/sa45xehb/ <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>WebGL 1.0. Drawing multiple triangles with random colors</title> <style> #renderCanvas { border: 1px solid #aaaafa; } </style> </head> <body> <canvas id="renderCanvas" width="250" height="250"></canvas> <script> var vertexShaderSource = `#version 300 es in vec2 a_Position; in vec3 a_Color; out vec3 v_Color; void main() { gl_Position = vec4(a_Position, 0.0, 1.0); v_Color = a_Color; }`; var fragmentShaderSource = `#version 300 es precision mediump float; in vec3 v_Color; out vec4 outColor; void main() { outColor = vec4(v_Color, 1.0); }`; var gl = document.getElementById("renderCanvas").getContext("webgl2"); var vShader = gl.createShader(gl.VERTEX_SHADER); gl.shaderSource(vShader, vertexShaderSource); gl.compileShader(vShader); var fShader = gl.createShader(gl.FRAGMENT_SHADER); gl.shaderSource(fShader, fragmentShaderSource); gl.compileShader(fShader); var program = gl.createProgram(); gl.attachShader(program, vShader); gl.attachShader(program, fShader); gl.linkProgram(program); gl.useProgram(program); function getColorArray(num) { var arr = []; var r = Math.random(); var g = Math.random(); var b = Math.random(); for (var i = 0; i < num; i++) { arr.push(r, g, b); } return arr; } var firstTriangleCoords = [0.0, 0.5, -0.5, -0.5, 0.5, -0.5]; var secondTriangleCoords = [-0.9, -0.9, -0.5, -0.9, -0.9, -0.5]; var thirdTriangleCoords = [0.9, -0.9, 0.9, -0.5, 0.5, -0.9]; var fourthTriangleCoords = [0.9, 0.9, 0.5, 0.9, 0.9, 0.5]; var fifthTriangleCoords = [-0.9, 0.9, -0.9, 0.5, -0.5, 0.9]; var firstTriangleRandomColors = getColorArray(3); var secondTriangleRandomColors = getColorArray(3); var thirdTriangleRandomColors = getColorArray(3); var fourthTriangleRandomColors = getColorArray(3); var fifthTriangleRandomColors = getColorArray(3); var verticesAndColors = firstTriangleCoords .concat(secondTriangleCoords) .concat(thirdTriangleCoords) .concat(fourthTriangleCoords) .concat(fifthTriangleCoords) .concat(firstTriangleRandomColors) .concat(secondTriangleRandomColors) .concat(thirdTriangleRandomColors) .concat(fourthTriangleRandomColors) .concat(fifthTriangleRandomColors); var floatArray = new Float32Array(verticesAndColors); var vbo = gl.createBuffer(); gl.bindBuffer(gl.ARRAY_BUFFER, vbo); gl.bufferData(gl.ARRAY_BUFFER, floatArray, gl.STATIC_DRAW); var a_Position = gl.getAttribLocation(program, "a_Position"); gl.vertexAttribPointer(a_Position, 2, gl.FLOAT, false, 0, 0); gl.enableVertexAttribArray(a_Position); var FSIZE = floatArray.BYTES_PER_ELEMENT; var a_Color = gl.getAttribLocation(program, "a_Color"); gl.vertexAttribPointer(a_Color, 3, gl.FLOAT, false, 0, FSIZE * 30); gl.enableVertexAttribArray(a_Color); gl.clearColor(0.9, 1.0, 0.9, 1.0); gl.clear(gl.COLOR_BUFFER_BIT); gl.drawArrays(gl.TRIANGLES, 0, 15); </script> </body> </html>
  25. SSAO using Opengles2

    Thanks a lot for your reply. Which resoultion should I take into account ? 1/width of depth buffer ? The effect is like edge filtering actually, is that what SSAO should do ?
  26. A create view failure result into a device removed, but should not have crashed in the first place. Are you sure you did not destroy the texture and have a stale pointer ?
  27. 2 ways to get free sound effects for your video games on my website: http://www.ogsoundfx.com - Download the free album here: http://www.ogsoundfx.com/product/og-sound-fx-free-samples-sounds-loops/ - And get even more sounds by subscribing to the newsletter on the website: http://www.ogsoundfx.com
  1. Load more activity