The MASM Forum

Projects => Game Development => Topic started by: Lonewolff on April 09, 2018, 02:21:23 PM

Title: The Ascended ASM game creation thread
Post by: Lonewolff on April 09, 2018, 02:21:23 PM
Hi Guys,

I thought I would start an ASM game dev thread for my project. Hoping it will inspire others to take up the challenge and being a bit of a 'dev log' for my progress.

With many thanks to Siekmanski for teaching me the dark art of interfacing with COM objects. I wouldn't have been able to even attempt such a feat without that prerequisite knowledge.


Where I am at (updated as progress happens) -

At this stage I have an empty DirectX 11 render window that is showing a cleared back buffer.
Now we have a quad getting drawn with a minimal pixel shader coded to colour the quad white

(https://i.imgur.com/FF6KmU9.png)

(https://i.imgur.com/dL05wIr.png)
(Nice clean render cycle, the way it should be  :t)


To do checklist -


This list will update and change as things progress and come to mind.

The journey is going to be huge. But luckily I am pretty pedantic and the end result should be stable as hell  8)


Status of DX11 port

DX11 Interfaces completed - ID3D11Device, ID3D11DeviceContext, ID3D11PixelShader, ID3D11RenderTargetView, ID3D11Texture2D, IDXGISwapChain, ID3D11VertexShader, ID3D11InputLayout.
Title: Re: Lonewolff's ASM game creation thread
Post by: LordAdef on April 09, 2018, 06:45:48 PM
Hey Wolff,


I will be following closely!
Good luck, I'm curious to see the whole development. I love to watch the whole journey. It's hard but it's amazing to see every turn, every solution. Go for it man!
Title: Re: Lonewolff's ASM game creation thread
Post by: zedd151 on April 09, 2018, 07:17:37 PM
Quote
With many thanks to Siekmanski for teaching me the dark art of interfacing with COM objects.....
Hats off to you my friend. :t


Quote
At this stage I have an empty DirectX 11 render window that is showing a cleared back buffer.
(Nice clean render cycle, the way it should be  :t)

So far, so good!  :icon14:


Quote
This list will update and change as things progress...

From unrelated experience - that means list will either:
1. Get much shorter - need to finish project fast.
2. Get much longer - plenty of time for project, as well as many hurdles.


Quote
The journey is going to be huge....

Yes, but as long as you have knowledgeable friends to help, it may smoothen the ride so as not to be such a rocky road.

Quote
.. the end result should be stable as hell...

Thats the 'can do' spirit!

Good luck with your monumental project. I' ll stop by here periodically to check the progress of the project .

edit = quote formatting.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 09, 2018, 07:22:23 PM
Thanks guys!  :biggrin:

This afternoon I took a step back and spent most of my time making things as robust as can be.

Implementing and testing heaps of error handling, so if something goes wrong I'll know exactly where it is.

(https://i.imgur.com/yCnH2lD.png)

This and making sure all interfaces are getting cleaned up correctly to kill all potential memory leaks in their tracks.

Title: Re: Lonewolff's ASM game creation thread
Post by: daydreamer on April 10, 2018, 04:54:25 AM
interesting thread
after alot of ddraw coding, I switched from ddraw floormapping an ocean 1680*2 monitors x1050 to code few d3d9 experiments on UV scrolling ocean and waterfall and canyon
I also experimented with SSE rotating/transform several coordinates in parallel
but most of its doesnt work on newer OS:(
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 10, 2018, 07:34:35 AM
Yeah, DDraw isn't something I have really touched. My earliest DirectX experience started with DX9. I skipped DX10 as it always felt like it was a stepping stone to something else and behold DX11 came out shortly after.  :lol:

I'm no guru at the API's, but I can normally achieve what I set out to do (after pulling out a heap of hair - haha).

My plan is to recreate where I got to with my game when I started it in C++ many years ago. Which I am confident I should be able to do (with a bit of luck thrown in).

I have a lot more to learn in MASM as I go though. There are a lot of basics that I will need to pick up along the way.

Looking forward to the journey, learning new things it the part I love about development. More important to me than the finish line.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 10, 2018, 04:20:12 PM
What a mammoth task that was, but I now have a quad rendered to the back buffer  8)

(https://i.imgur.com/FF6KmU9.png)

This proves to myself that I am up to the task.

Still a huge bucket load to do though  :lol:
Title: Re: Lonewolff's ASM game creation thread
Post by: zedd151 on April 11, 2018, 05:09:24 PM
Quote
(https://i.imgur.com/FF6KmU9.png)

Your game doesn't work. :P   :biggrin:   :lol:

Just kidding. Don't give up, no matter how high the mountain you are about to climb.  :t

Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 11, 2018, 05:13:05 PM
Quote from: zedd151 on April 11, 2018, 05:09:24 PM
Just kidding. Don't give up, no matter how high the mountain you are about to climb.  :t

No chance!  :bgrin:

Didn't get anything done today - killer headache, can barely see the screen.
Title: Re: Lonewolff's ASM game creation thread
Post by: zedd151 on April 11, 2018, 05:18:25 PM
Hats off to you if you manage to pull it off. DirectX seems pretty complicated to me....

I'm probably better suited to programming 16 bit raster graphics.  :lol:
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 12, 2018, 02:09:47 PM
Quote from: zedd151 on April 11, 2018, 05:18:25 PM
Hats off to you if you manage to pull it off. DirectX seems pretty complicated to me....

I'm probably better suited to programming 16 bit raster graphics.  :lol:

Thanks zedd  :t

I'm currently running two concurrent projects, one in MASM and the other in C++.

I'm doing this to make sure that operation is the same between the two, so if I stuff something up in my ASM DX11 library it should be easier to track.

Will be interesting to see what the performance is like between the two projects as well.

I am about to write some FPS counters so I can see how each build compares.


[edit]
C++ version gets ~7000 FPS at 1280 x 720

I have come to a grinding halt trying to implement my performance counter in ASM, if anyone can assist. I have posted at topic here http://masm32.com/board/index.php?topic=7060.0
Title: Re: Lonewolff's ASM game creation thread
Post by: zedd151 on April 12, 2018, 04:42:01 PM
So let me get this straight...

You are building two projects concurrently. one in c++ the other in assembly.

You want both to have roughly the same performance.

So you are fluent in c++ I assume, and you wish to recreate same project with masm.

If you do succeed (and I wish you the best) wouldn't it be like you are trying to rewrite c++ libraries in masm? :P
Or maybe would be easier to convert disassembled c++ version to masm compatible code.  :icon_eek:

Or are you in the learning process with c++ as well?

Jeez, you really do have a lot on your plate at the moment.
If you know c++ well enough, I would think it may be easiest to get as far as you can in c++.(even if minor bugs in program)
Then take a breather for a bit - then step by step bild the project in assembly.

Trying to do both, plus learning to work with directX would surely give me migraines.



Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 12, 2018, 04:46:30 PM
Nah, I am pretty decent with C++ and DirectX 11, so I am porting my knowledge over to ASM.

The pic in my avatar is where I am at with my game in C++.

This is what I am aiming for in ASM. Just about have enough of the DX API converted to I can get there fairly rapidly I believe.
Title: Re: Lonewolff's ASM game creation thread
Post by: zedd151 on April 12, 2018, 04:57:30 PM
Oh its not as bad as I thought then. Thats a relief! (for you, I mean)

Good luck with your endeavours...


zedd
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 12, 2018, 04:58:55 PM
Hehe, thanks.

It's the basics of MASM that is killing me at the moment   :lol:
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 12, 2018, 07:00:53 PM
So the benchmarks are in

Presently get an erratic frame rate in C++ of 6000 to 7500 FPS.

Frame rate is currently slower in ASM but is a very solid ~6000 FPS.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 13, 2018, 09:30:36 AM
Probably premature. But would be interesting to see how (and if) this runs for other people.

The DX initialisation still needs a little more work to make it robust, but should do the job.

I have attached the current build below.  :t

(Bear in mind it will only work on Windows 7 and above, as this is the minimum platform required for DirectX 11  :idea:)
Title: Re: Lonewolff's ASM game creation thread
Post by: Siekmanski on April 13, 2018, 10:27:52 AM
 8) 5500 FPS ( NVIDIA GeForce GTX 770 )
Title: Re: Lonewolff's ASM game creation thread
Post by: jj2007 on April 13, 2018, 10:35:25 AM
Quote from: Lonewolff on April 13, 2018, 09:30:36 AM
Probably premature. But would be interesting to see how (and if) this runs for other people.

On Win7-64, I see just a white rectangle. One core is at 50%.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 13, 2018, 11:37:40 AM
Nice!  :t

Thanks guys. Hopefully something nicer and more interactive on the next test  :biggrin:
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 15, 2018, 04:49:50 PM
Going great with this project. Everything is getting laid out nicely.  8)

Spent time refactoring the code in to nice re-usable proto's.

Now on to the nasty 3D mathematics - Ugghh! Not my strong point. Gotta be done though, as a personal rite of passage. On to that right now.  :t
Title: Re: Lonewolff's ASM game creation thread
Post by: LordAdef on April 15, 2018, 04:54:37 PM
I'm curious to see your original c++ project in action. The avatar picture from the game is great.

By the way, once in a while, put some code here for us to check out
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 15, 2018, 05:47:46 PM
At this stage this is what the main application and loop looks like


.code
WinMain proc
local windowWidth:dword
local windowHeight:dword
mov windowWidth, 1280
mov windowHeight, 720

; Create window
invoke SystemWindowCreate, windowWidth, windowHeight
mov hWnd, eax

; Create device and swap chain
invoke SystemDeviceCreate, windowWidth, windowHeight, hWnd

; Create vertex shader
mov ecx, SIZEOFvertexShaderData
invoke ShaderVertexCreate, addr d3dVertexShader, addr vertexShaderData, ecx

; Create pixel shader
mov ecx, SIZEOFpixelShaderData
invoke ShaderPixelCreate, addr d3dPixelShader, addr pixelShaderData, ecx


; Create input layout XY
mov ecx, SIZEOFvertexShaderData
coinvoke d3dDevice, ID3D11Device, CreateInputLayout, addr inputDescP, 1, addr vertexShaderData, ecx, addr d3dInputLayout
invoke SystemError, TEXT_("Failed to create input layout.")

; Create vetex buffer
coinvoke d3dDevice, ID3D11Device, CreateBuffer, addr vertexDesc, addr resourceData, addr d3dVertexBuffer
invoke SystemError, TEXT_("Failed to create vertex buffer.")

; Reset performance counters
invoke QueryPerformanceFrequency, addr TimeFrequency
invoke QueryPerformanceCounter, addr TimeStart

; Constant buffer creation (for the WVP matrices)
mov ebx, offset constDesc
cd equ [ebx.D3D11_BUFFER_DESC]
mov cd.BindFlags, D3D11_BIND_CONSTANT_BUFFER
mov cd.ByteWidth, 192
mov cd.Usage, D3D11_USAGE_DEFAULT
coinvoke d3dDevice, ID3D11Device, CreateBuffer, addr cd, 0, addr d3dWvpCB
invoke SystemError, TEXT_("Failed to create constant buffer.")

; Show window once initialisation has succeeded
invoke ShowWindow, hWnd, 1

; Main loop
.while 1
; Windows message pump
invoke PeekMessage, ADDR msg, NULL, 0, 0, PM_REMOVE
invoke TranslateMessage, ADDR msg
invoke DispatchMessage, ADDR msg
.if msg.message == WM_QUIT
.break
.endif

; Update the frame rate counter
invoke TimerFPS

; Set render target as active
coinvoke d3dContext, ID3D11DeviceContext, OMSetRenderTargets, 1, addr d3dBackBufferRTV, 0

; Clear back buffer
coinvoke d3dContext, ID3D11DeviceContext, ClearRenderTargetView, d3dBackBufferRTV,addr BackgroundColor

; Set shaders
coinvoke d3dContext, ID3D11DeviceContext, VSSetShader, d3dVertexShader, 0, 0
coinvoke d3dContext, ID3D11DeviceContext, PSSetShader, d3dPixelShader, 0, 0

; Draw the quad
coinvoke d3dContext, ID3D11DeviceContext, IASetInputLayout, d3dInputLayout
coinvoke d3dContext, ID3D11DeviceContext, IASetVertexBuffers, 0, 1, addr d3dVertexBuffer, addr dataStride, addr dataOffset
coinvoke d3dContext, ID3D11DeviceContext, IASetPrimitiveTopology, D3D11_PRIMITIVE_TOPOLOGY_TRIANGLELIST
coinvoke d3dContext, ID3D11DeviceContext, Draw, 6, 0

; Present
coinvoke d3dSwapchain, IDXGISwapChain, Present, 0, 0
.endw

call SystemExitApplication

WinMain endp
end WinMain


Lot's of error handling. So if something breaks, I should know where to look for the cause (generally a result of the end system not being compatible with some call I have made). In an ideal world, the end user won't have any problems.

I'd spoil it and send more screenshot of what my game looked like in C++ back when I was working on it, but it would be cooler knowing the screenshots are coming from my ASM version. So I'll have to hold out on you for the moment on that front.  :biggrin:
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 15, 2018, 07:34:19 PM
It's weird...

I am fleshing out my matrix calculations in C++ and comparing against DirectXMath to make sure my results are correct and my un-optimised code is running rings around Microsoft's implementation  :icon_eek:

I'm up to 436% faster already.  :dazzled:

Title: Re: Lonewolff's ASM game creation thread
Post by: Siekmanski on April 15, 2018, 09:41:33 PM
Quote from: Lonewolff on April 15, 2018, 07:34:19 PM
It's weird...

I am fleshing out my matrix calculations in C++ and comparing against DirectXMath to make sure my results are correct and my un-optimised code is running rings around Microsoft's implementation  :icon_eek:

I'm up to 436% faster already.  :dazzled:

Have you fasten your seat belts?  :bgrin:

"mov ebx, offset constDesc"
About EBX you need to preserve that one, also counts for ESI and EDI.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 16, 2018, 07:41:10 AM
Thanks man!

How do you preserve it? Noob here.  :bgrin:
Title: Re: Lonewolff's ASM game creation thread
Post by: jj2007 on April 16, 2018, 08:03:45 AM
push ebx  ; preserved
mov ebx, 123
pop ebx   ; restored
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 16, 2018, 08:06:20 AM
Ah, ok. Thanks JJ  :icon_cool:
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 16, 2018, 02:16:14 PM
Almost have enough of my matrix library made to make something usable.

Fleshed it out in C++. And I'm already beating Microsoft's implementation by a mile.

(https://i.imgur.com/p5NvtC6.png)

The top results are MS's and the bottom are my own implementation.

Will translate this over to ASM shortly and see if I can then set up a 3D camera for this project.  8)
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 20, 2018, 12:25:48 PM
Almost finished writing part one of my matrix library (yet another thing I had to learn from scratch - LOL  :bgrin:)

The results are pretty good.

(https://i.imgur.com/TuupkL3.png)

Beating Microsoft's matrix library by a huge amount and am just behind my own C++ implementation.

This is a great result as I can see plenty of places I can improve my ASM code. At this point I am just making the calculations work out correctly - which they are.  :t

MatrixTranspose and MatrixMultiply to finish off next and then I should be good to set up a 3D camera.
Title: Re: Lonewolff's ASM game creation thread
Post by: aw27 on April 20, 2018, 07:00:34 PM
I have converted the whole DirectXMath library to ASM (https://www.codeproject.com/Tips/1174521/DMath-is-DirectXMath-for-All).
When you are able to post your performance comparisons source code I would like to see how it stacks up against the others.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 20, 2018, 07:40:35 PM
Quote from: aw27 on April 20, 2018, 07:00:34 PM
I have converted the whole DirectXMath library to ASM (https://www.codeproject.com/Tips/1174521/DMath-is-DirectXMath-for-All).
When you are able to post your performance comparisons source code I would like to see how it stacks up against the others.

Sounds good.

As I mentioned before, the code is sub optimal at the moment, with focus being on accuracy. But, I can already see many places where I can improve upon it.
Title: Re: Lonewolff's ASM game creation thread
Post by: aw27 on April 20, 2018, 08:13:57 PM
I never really tested the performance of the x86 part of my library, I concentrated on the x64 part, which actually beats DirectXMath on frame rate on the collision test sample supplied by Microsoft.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 20, 2018, 08:21:52 PM
Nice one!

If my current results are anything to go by, I should beat DirectXMath in real world use also.

That will be tomorrow's task. Getting that elusive 3D camera system running.

Should be easy in comparison to the efforts put in in the past week. Never really dealt with matrices in depth before then. It's good to have a much better understanding how they work now.
Title: Re: Lonewolff's ASM game creation thread
Post by: Siekmanski on April 20, 2018, 11:42:39 PM
Hi Jose,

Are you willing to release the source code of the DMath lib?
So we can learn from it and see if improvements can be done?
Title: Re: Lonewolff's ASM game creation thread
Post by: aw27 on April 21, 2018, 12:40:52 AM
Quote from: Siekmanski on April 20, 2018, 11:42:39 PM
Hi Jose,

Are you willing to release the source code of the DMath lib?
So we can learn from it and see if improvements can be done?
Hi Marinus,

I may publish in the near future in Github for the x86, for x64 I will have to modify it because was produced for UASM/JWASM and does not assemble with ML64, contains things like "uses xmm6 xmm7" and other amenities like relying on an option to align stack variables to 16 byte boundaries.
Modification will take a fair amount of time because the code is huge.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 21, 2018, 06:25:05 PM
Huge week!

Got the required portions done for my matrix library (exactly 1000 lines later  :dazzled:)

Had an error that had me stumped for a couple of hours where I transposed a couple of values.

But at the end of the day, we now have a working 3D perspective camera.

(https://i.imgur.com/7WvKkww.png)

Yeah, looks similar to the last images, but you'll notice the perspective is much better. (No longer stretched).

I'll post something more interesting in the render window in the morning.  :t
Title: Re: Lonewolff's ASM game creation thread
Post by: russellgreen on April 21, 2018, 06:36:51 PM
Quote
I'll post something more interesting in the render window in the morning.  :t

Now thats what everyone is waiting for.   :t

It is very good that you are doing this incrementally, a little at a time.  For a fairly large project, that is exactly how I would do it.

A baby has to crawl before they can walk; a child has to walk before they can run.  Just baby steps at first.  lol


Russell
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 21, 2018, 07:14:36 PM
For sure Russell  :t

It's the only way to do it, I think.

Saves beating yourself up later on for something silly that you 'short cutted' early on. Test everything!  8)
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 23, 2018, 11:13:56 AM
Little bit more to see now.

Still a few bugs in my matrix code (if I move the camera away from looking down the Z axis, thinks get a bit skewed). So, I have a miscalculation in my code somewhere. Shouldn't be too hard to track.
Title: Re: Lonewolff's ASM game creation thread
Post by: russellgreen on April 23, 2018, 12:36:22 PM
Quote from: Lonewolff on April 23, 2018, 11:13:56 AM
Still a few bugs in my matrix code....

You can figure it out Neo - or get Morpheus to help.  lol

So far so good!
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 23, 2018, 12:37:50 PM
I'm sure it will be a one liner.  :bgrin:

About to delve into it again now.
Title: Re: Lonewolff's ASM game creation thread
Post by: russellgreen on April 23, 2018, 12:41:47 PM
Quote from: Lonewolff on April 23, 2018, 12:37:50 PM
I'm sure it will be a one liner.  :bgrin:

About to delve into it again now.

I couldn't resist not saying something about the Matrix   :icon_mrgreen:

Edit==
I know nothing about graphics beyond GDI, so this is learning experience for me. Thank you for this thread.
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 23, 2018, 12:49:28 PM
Quote from: RussG on April 23, 2018, 12:41:47 PM
I couldn't resist not saying something about the Matrix   :icon_mrgreen:

Red pill all the way!  :bgrin:
Title: Re: Lonewolff's ASM game creation thread
Post by: FORTRANS on April 24, 2018, 12:32:33 AM
Hi,

   Maybe off-topic, if so, sorry.  I bought a series of books by
Jim Blinn titled "Jim Blinn's Corner".  These two;  "A Trip Down the
Graphics Pipeline" and "Notation, Notation, Notation" discuss
perspective and the use of matrices.  I enjoyed the whole series. 

Cheers,

Steve
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 25, 2018, 08:36:56 PM
Thanks man, might be worth a look at  :t

Just finished optimising the hell out of my matrix routines. I am quite pleased with the results.


20000000 iterations

XMMatrixIdentity
        DirectXMath 578 ms
        C++ 125 ms
ASM 109 ms
XMMatrixPerspectiveFovLH
        DirectXMath 3000 ms
        C++ 2172 ms
ASM 1594 ms
XMMatrixLookAtLH
        DirectXMath 9343 ms
C++ 2781 ms
ASM 1641 ms
XMMatrixTranspose
        DirectXMath 0.719s
        C++ 0.125s
ASM 0.125s


So, I am killing Microsoft's own implementation and this is just using normal FPU commands.
Title: Re: Lonewolff's ASM game creation thread
Post by: jj2007 on April 25, 2018, 09:09:05 PM
You could probably get a big boost with SIMD instructions.

As a side note, some older BASIC dialects had matrix commands. GfaBasic, for example, has about 20 of them: MAT ADD, MAT CPY, MAT INV, MAT MUL, and so on. I have never used them, but I wonder whether they could be interesting for game development. For more recent versions, see Operations on Arrays (https://docs.opencv.org/2.4/modules/core/doc/operations_on_arrays.html).
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 25, 2018, 09:14:26 PM
Yeah, I plan on looking into SIMD.

I thought it would better to learn the basic FPU operations first. Pretty confident with the basic FPU use now.  :t
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 26, 2018, 06:10:38 PM
Another demo file (rotating cube) 8)

(https://i.imgur.com/VnDetn7.png)

My matrix library is done and bug free.

Next will be a directional light to give the scene some more feel to it.




Title: Re: Lonewolff's ASM game creation thread
Post by: Siekmanski on April 26, 2018, 06:39:16 PM
 8)
Title: Re: Lonewolff's ASM game creation thread
Post by: Lonewolff on April 26, 2018, 06:46:00 PM
  :icon14:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 29, 2018, 09:19:15 PM
That was a mission and a half  :icon_eek:

Let there be light!

(https://i.imgur.com/vTM1kvm.png)
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 30, 2018, 09:33:30 AM
(https://i.imgur.com/QrJNTiq.png)
Title: Re: The Ascended ASM game creation thread
Post by: zedd151 on April 30, 2018, 10:02:19 AM
Looks rather cubic.  :P

I noticed the smoothing of the edges, though.

Why is it that such cubes (not only yours) have a seemingly unnatural and exaggerated perspective?  Could be my eyesight as well.   :eusa_boohoo:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 30, 2018, 10:13:49 AM
Yep, I smoothed the edges of the cube to bring out the lighting.

The camera is a 0, 2, -2 and the cube is rotating. Probably looks exaggerated being a 3D perspective camera.
Title: Re: The Ascended ASM game creation thread
Post by: zedd151 on April 30, 2018, 10:17:11 AM
Is it a predefined algorithm  for the perspective?  Or something that you have control over?
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 30, 2018, 10:18:30 AM
Somewhat predefined. You have control over field of view, aspect, near plane, and far plane.
Title: Re: The Ascended ASM game creation thread
Post by: zedd151 on April 30, 2018, 10:22:32 AM
Okay, thanks. I have no clue when it comes to 3D rendering. I'll leave that to the graphics pros like you and siekmanski. And felipe is trying hard to be like you guys btw. Gotta admire his spirit and "can do" attitude.
Title: Re: The Ascended ASM game creation thread
Post by: felipe on April 30, 2018, 11:01:05 AM
Quote from: zedd151 on April 30, 2018, 10:22:32 AM
And felipe is trying hard to be like you guys btw

:biggrin: Unfortunately i have been very misunderstanding... I really don't want to imitate nobody here. You have to know that this libraries are widespread to anybody...well, maybe not so much friendly with asm programmers, but Siekmanski helped with that a lot!  :idea:
Title: Re: The Ascended ASM game creation thread
Post by: felipe on April 30, 2018, 11:13:55 AM
QuoteSorry. I didn't mean that you were trying to imitate, rather you are trying hard to be a successful graphics programmer but are having a hard time with it.

Larry

No, zedd151, sorry. I'm not trying that and i'm not having a hard time with it neither. :idea: Just think on me as a discrete programmer with a lot of interests than don't have the time neither the intentions of been tied to any project.  :t
Title: Re: The Ascended ASM game creation thread
Post by: zedd151 on April 30, 2018, 11:18:35 AM
Quote from: felipe on April 30, 2018, 11:13:55 AM

No, zedd151, sorry. I'm not trying that and i'm not having a hard time with it neither. :idea: Just think on me as a discrete programmer with a lot of interests than don't have the time neither the intentions of been tied to any project.  :t

I stand corrected. I had misread your intentions by what you post. Sorry again.
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 30, 2018, 11:21:28 AM
Quote from: felipe on April 30, 2018, 11:01:05 AM
You have to know that this libraries are widespread to anybody...well, maybe not so much friendly with asm programmers, but Siekmanski helped with that a lot!  :idea:

I'm actually finding that DirectX is somewhat easier in ASM than it is in C++, thanks to the freedom of not having to fight with 'types' etc.
Title: Re: The Ascended ASM game creation thread
Post by: felipe on April 30, 2018, 11:28:07 AM
No problem, probably with my bad english i can't be too much elocuent.  :biggrin: Also, you can note i do care when people talk about me in somekind of prototyped person. That's probably because felipe is my real name, and because i like this forum and i want to keep programming and loading demos, works or whatever idea i can get to code. I like critics, there's no problem with that. Actually that's a good thing. But i'm not some prototype nor stereotype, i'm a real person (of meat and bones). :icon_exclaim:
Please note too that i'm not looking for fame either, just freedom and enjoy.  :greenclp:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 30, 2018, 06:04:30 PM
HDD crashed mid edit and when I booted back up it was just a massive file containing only spaces.  :shock:

I two minds, do I restart the project? Or do I push on in to new realms and make a huge comeback in DirectX 12?

I half want to give DX12 a try. A mash up of old school assembly with the latest in cutting edge.

I could be a pioneer, as I don't think it has ever been done before.  8)

Title: Re: The Ascended ASM game creation thread
Post by: zedd151 on April 30, 2018, 07:39:40 PM
1. Fix your computer first.

2. Once computer is rock solid again. restart previous project.

3. Experiment with DX12 to get your feet wet, so to speak.

4. Always make a backup copy of your project. Will save you many headaches in the future. Every time you save to assemble and test,  make a copy - just in case.
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 30, 2018, 07:54:50 PM
Yeah, all points to the power supply. It had been intermittently rebooting for about a month now, even after a clean install of Windows and a different system HDD (including cables).

I make sure that everything I buy is good quality. Mainboard only has solid state capacitors. Bulgy electrolytics often being the cause of early Mainboard demise.

Checked the CPU half hour ago, just in case the cooling system isn't right. But it is running stable at a nice 38° C (100 ° F). So it is running quite cool.
Title: Re: The Ascended ASM game creation thread
Post by: Siekmanski on April 30, 2018, 08:11:44 PM
Quote from: Ascended on April 30, 2018, 06:04:30 PM
HDD crashed mid edit and when I booted back up it was just a massive file containing only spaces.  :shock:

Welcome to the Empty File Club.  http://masm32.com/board/index.php?topic=6833.0

I know how you feel right know.  :shock:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on April 30, 2018, 08:21:27 PM
Quote from: Siekmanski on April 30, 2018, 08:11:44 PM
Welcome to the Empty File Club.  http://masm32.com/board/index.php?topic=6833.0

I know how you feel right know.  :shock:

Hehe, all good.  :biggrin:

Glad I didn't lose my matrix library I created though. Wouldn't have looked forward to recreating that 1000 lines of math.
Title: Re: The Ascended ASM game creation thread
Post by: LordAdef on May 01, 2018, 04:30:28 AM
Reaally sorry if I'm asking a stupid question,  but did you changed your masm32 name or I missed something?
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on May 01, 2018, 07:11:58 AM
Yes and yes  :biggrin:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on May 03, 2018, 10:34:17 AM
Turned off virtualization in the BIOS and haven't had a random reboot since.

Could be just co-incidence though as it was really only happening once a day. Time will tell, I guess.
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on May 06, 2018, 05:43:34 PM
Got back into the swing of things.

(https://i.imgur.com/BDEys1Qg.png)

Time to work out some shadowing techniques. This will be new ground for me.
Title: Re: The Ascended ASM game creation thread
Post by: zedd151 on May 06, 2018, 05:47:04 PM
Your game doesn't work for me.    :greensml:

QuoteTurned off virtualization in the BIOS and haven't had a random reboot since...

So everything is ok on your end?
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on May 06, 2018, 06:03:37 PM
Hasn't had a random reboot since I changed the setting. Was just a random guess to turn that off too.

What you mean it doesn't work for you? One of the old demo's you mean?
Title: Re: The Ascended ASM game creation thread
Post by: zedd151 on May 06, 2018, 06:15:02 PM
Quote from: Ascended on May 06, 2018, 06:03:37 PM

What you mean it doesn't work for you?

Just teasing you.   :badgrin:   

:lol:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on May 06, 2018, 06:19:15 PM
Was quite possible. I was forcing 8x AA, and DX11 capable cards only guarantee 4x.   :lol:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on May 22, 2018, 11:40:17 AM
Haven't done much with this lately, apart from making a nice model loader routine.

(https://i.imgur.com/IeWJH5u.png)
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on May 22, 2018, 06:21:02 PM
Just slotted in a new power supply and graphics card, due to the recent intermittent reboots I have been getting.

From a GTX750-TI and now a GTX1050.

Was expecting to see around 20% framerate increase and was pleasantly surprised to see a 100% increase.  8)

(https://i.imgur.com/pzW9dv1.png)



Title: Re: The Ascended ASM game creation thread
Post by: felipe on June 03, 2018, 03:16:45 AM
None of the 2 .exe here works fine for me. Would you post a complete working source code in a generous fashion with the people of this forum that has helped you to understand a little bit the assembly world?  :idea:
Title: Re: The Ascended ASM game creation thread
Post by: Lonewolff on June 06, 2018, 01:13:47 PM
In my constant thirst to learn more, I am ditching DirectX 11 and pushing on to DirectX 12.

Will initially be fleshing this out in C++ to make sure I am doing it correctly and then port it over to ASM.  :icon_cool:
Title: Re: The Ascended ASM game creation thread
Post by: Siekmanski on June 07, 2018, 08:36:44 PM
Hi Ascended,

Any chance for us, to have a peek at the Directx 11 asm source code?