Welcome, Guest. Please login or register. Did you miss your activation email?

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - sorum40

Pages: [1] 2
1
SFML projects / Re: Shadow Gangs
« on: January 11, 2021, 11:46:02 pm »
Added Shadow Gangs to the wiki.

2
SFML projects / Re: Shadow Gangs
« on: January 11, 2021, 12:02:07 am »
Actually more than 5 years.

5 years was for the PC version, then came the other platforms.
(And still not the end of it I hope, there is some other platforms I am trying to get the game on).

I tried to add it to the wiki, but I got an error after clicking submit.
(Preview worked, then after clicking submit, I got 404 page not found error).

Then, I went back to click on edit, and got the same 404 error, this time without even showing the edit page.

3
SFML projects / Re: Shadow Gangs
« on: January 09, 2021, 07:39:31 pm »
Looks cool! :)
It's really nice retro art and feel, did you make the graphics?
Thank you :)
I did programming, the backgrounds and sprites were done by the same artist.
(It took 5 years to make, both the programming and the graphics).

I am very happy to have used SFML for the game, even if it is not used in the XBOX version, the design and philosophy of SFML is used.

The game was made around the SFML ideas and architecture, especially the graphics, input and sound architecture.

I made an interface abstraction for the graphics, sound and input which is inspired from SFML, and put implementation of it for the different platforms.

The implementation like this:

Steam: Graphics, Sound and Input implemented by SFML
XBOX: Graphics (BGFX), Sound (FMOD), and Input (Xbox input system)
Switch: Graphics: SFML with custom implemented SDK calls, Sound (FMOD), and Input (SFML with custom Nintendo SDK implementation).

Thank you guys for this awesome library, I did thank the SFML team it in the ending credits on all platforms.

4
SFML projects / Re: Shadow Gangs
« on: January 08, 2021, 10:15:16 pm »
Switch version uses SFML :)
But all platform specific Switch related code I implemented, because the github switch SFML uses a homebrew SDK, and not the Nintendo one (which is normal as the Nintendo SDK is not public).

The Xbox version doesn't use SFML, I used BGFX instead as Xbox doesn't support Opengl.

5
SFML projects / Shadow Gangs
« on: March 15, 2020, 06:00:30 pm »
Hi everyone;

This game uses SFML.

Thank you very very much for this great library, it should be called GFML (Great Fast Media Library, just kidding:)...maybe not :) )

I will of course credit it in the in game finish credits.

Shadow Gangs release date set for the 10th of April on Steam

Please wishlist it if you like it!

The new release trailer:


Steam page
https://store.steampowered.com/app/1143430/Shadow_Gangs/


6
Hi;

Any update on this issue?
I can try to make a minimal source file to test it.

7
Could you attach a debugger and provide a bit more information (stack trace, console output, etc)? :)

With "it crashes" we can't really check what the driver is doing wrong.

    ig75icd32.dll!02cf7ef6()   Unknown
    [Frames below may be incorrect and/or missing, no symbols loaded for ig75icd32.dll]   Unknown
    ig75icd32.dll!02d8d3a4()   Unknown
    ig75icd32.dll!02d8c3f7()   Unknown
    ig75icd32.dll!02d90403()   Unknown
    ig75icd32.dll!02d860d0()   Unknown
    ig75icd32.dll!02f2e5e2()   Unknown
>   Game.exe!BlurEffect::DownSample(const IRenderTexture & xInput, IRenderTexture & xOutput) Line 174   C++
    Game.exe!BlurEffect::Apply(IRenderTarget & xRenderTexture, IRenderTexture & xSourceTexture, float fBlurRatioMultiplier) Line 64   C++
    Game.exe!BloomEffect::Apply(IRenderTarget & xRenderTexture) Line 57   C++


Output:
Exception thrown at 0x02CF7EF6 (ig75icd32.dll) in Game.exe: 0xC0000005: Access violation writing location 0x00000008.


In the stack, it doesn't show the SFML stack for some reason, but here is the function that was called just after DownSample:
m_xShader.setUniform(xParamName, sf::Vector2f(fParamValue.x, fParamValue.y));

I also noticed it didn't crash when in windowed mode.
Also looks like it doesn't crash if I am disabling shaders.

Also just now:

    ig75icd32.dll!01d77ef6()   Unknown
    [Frames below may be incorrect and/or missing, no symbols loaded for ig75icd32.dll]   Unknown
    ig75icd32.dll!01e0d3a4()   Unknown
    ig75icd32.dll!01e0c3f7()   Unknown
    ig75icd32.dll!01e10403()   Unknown
    ig75icd32.dll!01e060d0()   Unknown
    ig75icd32.dll!01fae5e2()   Unknown
    Game.exe!sf::RenderTarget::draw(const sf::Drawable & drawable, const sf::RenderStates & states) Line 241   C++

output:
Exception thrown at 0x01D77EF6 (ig75icd32.dll) in Game.exe: 0xC0000005: Access violation writing location 0x00000008.

Also shader related. The const sf::RenderStates & states had a shader referenced.

8
Can this still be fixed?
By working around this driver issue?

A lot of people might be using laptops which are difficult to update, and it would be great if they can also run SFML games.

9
Unfortunately, I can't install the driver.

Even with manual installation, it throws an error:
"the driver selected for this device does not support this version of windows"

I think the issue is that I have a Dell laptop, and they may have put in some checks to refuse any driver not certified by them.

10
Try the latest driver: Version:? 15.40.41.5058? (Latest)? Date: 9/18/2018
i thought I had the latest (using the auto update on windows, and also the Dell pc support tool), but no.
Thanks a lot for the info, all these processor types, generations etc...  it's very confusing.

I'll try it tonight.

11
What's your intel driver version?
It's: version 10.18.14.4414
date: 23/03/2016

12
No crash at all with 2.4.2, super stable.

Laptop with Intel GPU CORE I5-4200U
Latest drivers.

The crash happens randomly, and all the time in the render texture code, not on SFML, but inside the driver code.

The last one was in the Draw call, and it was related to context.

I was waiting for this version for a long time, for the enhanced Opengl render performance, which I witnessed in my game. Super fast now.

But the crashes are here.

Another issue is with some white lines under and over text.

13
Graphics / Re: acquireTransientContext does heap allocation
« on: August 24, 2017, 06:37:01 pm »
It's already a good thing that I didn't see any other SFML allocations for many frames.
The only one that shows up from SFML, is also the only the only that shows UP while running the game, and it is this transientContext.

As I said, not a big issue, and I a can live with it.

If it is changed in a future update to not do dynamic allocations multiple times that would be good.

In any case, thank you all for this great library.

14
Graphics / Re: acquireTransientContext does heap allocation
« on: August 24, 2017, 11:09:54 am »
So there we have confirmation that the transientContext being created once per thread is wrong, isn't it?
It is created and recreated endlessly.

A documentation update will be good, to clear the confusion.

If there is no way around it, and this seems to be the case, I can live with it, no problem.

15
Graphics / Re: acquireTransientContext does heap allocation
« on: August 24, 2017, 01:08:03 am »
Quote from: eXpl0it3r
With many draw calls, doing heap allocations is an overhead as it translate in OS API call.
Since you talk about performance, I assume you ran a profiler. What kind of bottleneck did the profiler report?
Yes, run profiler on other situation involving heap allocations, not this.
I prefer no heap allocations anywhere after loading resources.

Quote from: eXpl0it3r
transientContext exists only once per thread and as you can see in the code you post, it only get allocated if it wasn't allocated already.

    // This per-thread variable tracks if and how a transient
    // context is currently being used on the current thread
    sf::ThreadLocalPtr<TransientContext> transientContext(NULL);
Then why I get alloc/dealloc all the time in the same frame, and the same main thread?
Continously calling new and delete on the transientContext.

This is a snapshot in the same frame, the same thread:

Not Flagged   >   6188   0   Main Thread   Main Thread   Game.exe!MemoryAllocHook   Normal
                        Game.exe!MemoryAllocHook(int nAllocType, void * pvData, unsigned int nSize, int nBlockUse, long lRequest, const unsigned char * szFileName, int nLine) Line 54   
                        [External Code]   
                        [Frames below may be incorrect and/or missing, no symbols loaded for ucrtbased.dll]   
                        Game.exe!sf::priv::GlContext::acquireTransientContext() Line 316   
                        Game.exe!sf::GlResource::TransientContextLock::TransientContextLock() Line 63   
                        Game.exe!sf::Texture::bind(const sf::Texture * texture, sf::Texture::CoordinateType coordinateType) Line 619   
                        Game.exe!sf::RenderTarget::applyTexture(const sf::Texture * texture) Line 492   
                        Game.exe!sf::RenderTarget::clear(const sf::Color & color) Line 106   
                        Game.exe!PD_Screen::Clear() Line 53   
                        Game.exe!GameManager::Draw() Line 501   
                        Game.exe!GameManager::Run() Line 337   
                        Game.exe!Run() Line 44   
                        Game.exe!main() Line 55   
                        [External Code]   


                  
                  Not Flagged   >   6188   0   Main Thread   Main Thread   Game.exe!MemoryAllocHook   Normal
                        Game.exe!MemoryAllocHook(int nAllocType, void * pvData, unsigned int nSize, int nBlockUse, long lRequest, const unsigned char * szFileName, int nLine) Line 54   
                        [External Code]   
                        [Frames below may be incorrect and/or missing, no symbols loaded for ucrtbased.dll]   
                        Game.exe!sf::priv::GlContext::releaseTransientContext() Line 339   
                        Game.exe!sf::GlResource::TransientContextLock::~TransientContextLock() Line 70   
                        Game.exe!sf::Texture::bind(const sf::Texture * texture, sf::Texture::CoordinateType coordinateType) Line 669   
                        Game.exe!sf::RenderTarget::applyTexture(const sf::Texture * texture) Line 492   
                        Game.exe!sf::RenderTarget::clear(const sf::Color & color) Line 106   
                        Game.exe!PD_Screen::Clear() Line 53   
                        Game.exe!GameManager::Draw() Line 501   
                        Game.exe!GameManager::Run() Line 337   
                        Game.exe!Run() Line 44   
                        Game.exe!main() Line 55   
                        [External Code]   

Not Flagged   >   6188   0   Main Thread   Main Thread   Game.exe!MemoryAllocHook   Normal
                        Game.exe!MemoryAllocHook(int nAllocType, void * pvData, unsigned int nSize, int nBlockUse, long lRequest, const unsigned char * szFileName, int nLine) Line 54   
                        [External Code]   
                        [Frames below may be incorrect and/or missing, no symbols loaded for ucrtbased.dll]   
                        Game.exe!sf::priv::GlContext::acquireTransientContext() Line 316   
                        Game.exe!sf::GlResource::TransientContextLock::TransientContextLock() Line 63   
                        Game.exe!sf::Texture::bind(const sf::Texture * texture, sf::Texture::CoordinateType coordinateType) Line 619   
                        Game.exe!sf::RenderTarget::applyTexture(const sf::Texture * texture) Line 492   
                        Game.exe!sf::RenderTarget::draw(const sf::Vertex * vertices, unsigned int vertexCount, sf::PrimitiveType type, const sf::RenderStates & states) Line 259   
                        Game.exe!sf::Sprite::draw(sf::RenderTarget & target, sf::RenderStates states) Line 145   
                        Game.exe!sf::RenderTarget::draw(const sf::Drawable & drawable, const sf::RenderStates & states) Line 195   
                        Game.exe!PD_Screen::Draw(const ISprite & xSprite, RenderState::BLEND_MODE eBlendMode, const IShader * pxShader) Line 61   
                        Game.exe!Widget::Draw(IRenderTarget & xRenderTarget, RenderState::BLEND_MODE eBlendMode) Line 137   
                        Game.exe!Gui::Draw(IRenderTarget & xRenderTarget) Line 64   
                        Game.exe!MenuHandler::Draw(IRenderTarget & xRenderTarget) Line 46   
                        Game.exe!GameManager::Draw() Line 508   
                        Game.exe!GameManager::Run() Line 337   
                        Game.exe!Run() Line 44   
                        Game.exe!main() Line 55   
                        [External Code]   
                  
                  
                  
                  Not Flagged   >   6188   0   Main Thread   Main Thread   Game.exe!MemoryAllocHook   Normal
                        Game.exe!MemoryAllocHook(int nAllocType, void * pvData, unsigned int nSize, int nBlockUse, long lRequest, const unsigned char * szFileName, int nLine) Line 54   
                        [External Code]   
                        [Frames below may be incorrect and/or missing, no symbols loaded for ucrtbased.dll]   
                        Game.exe!sf::priv::GlContext::releaseTransientContext() Line 339   
                        Game.exe!sf::GlResource::TransientContextLock::~TransientContextLock() Line 70   
                        Game.exe!sf::Texture::bind(const sf::Texture * texture, sf::Texture::CoordinateType coordinateType) Line 669   
                        Game.exe!sf::RenderTarget::applyTexture(const sf::Texture * texture) Line 492   
                        Game.exe!sf::RenderTarget::draw(const sf::Vertex * vertices, unsigned int vertexCount, sf::PrimitiveType type, const sf::RenderStates & states) Line 259   
                        Game.exe!sf::Sprite::draw(sf::RenderTarget & target, sf::RenderStates states) Line 145   
                        Game.exe!sf::RenderTarget::draw(const sf::Drawable & drawable, const sf::RenderStates & states) Line 195   
                        Game.exe!PD_Screen::Draw(const ISprite & xSprite, RenderState::BLEND_MODE eBlendMode, const IShader * pxShader) Line 61   
                        Game.exe!Widget::Draw(IRenderTarget & xRenderTarget, RenderState::BLEND_MODE eBlendMode) Line 137   
                        Game.exe!Gui::Draw(IRenderTarget & xRenderTarget) Line 64   
                        Game.exe!MenuHandler::Draw(IRenderTarget & xRenderTarget) Line 46   
                        Game.exe!GameManager::Draw() Line 508   
                        Game.exe!GameManager::Run() Line 337   
                        Game.exe!Run() Line 44   
                        Game.exe!main() Line 55   
                        [External Code]   



MemoryAllocHook detects heap allocations/deallocations.
It looks like the transientContext is newed, then deleted in releaseTransientContext, then newed again, then released etc...

So as you can see, it gets allocated all the time, as it is getting deleted all the time.

If this is the normal behaviour, is it possible to make it in a way to avoid new and delete?

Pages: [1] 2