Page MenuHomeWildfire Games
Feed Advanced Search

Sep 2 2019

Krinkle awarded D2079: Adds snapping to edges for buildings a Orange Medal token.
Sep 2 2019, 2:09 AM
vladislavbelov added a comment to D2207: Adds a function to pick entities with obstructions on screen.

As said above this looks good. Some nitpicks:

@wraitii What do you think about the attached patch?

Sep 2 2019, 1:18 AM

Aug 29 2019

vladislavbelov added a comment to D2207: Adds a function to pick entities with obstructions on screen.

Aug 29 2019, 12:36 AM

Aug 26 2019

vladislavbelov added a comment to D2216: Adds a LOS mask to Minimap.
In D2216#92650, @Nescio wrote:

Just let the gui session files use a circular png.

Yeah, with the patch you're able to use whatever background you want. Because everything is transparent except visible by LOS areas.

Aug 26 2019, 7:03 PM
elexis awarded D2216: Adds a LOS mask to Minimap a Like token.
Aug 26 2019, 6:58 PM
vladislavbelov added a comment to D2216: Adds a LOS mask to Minimap.
In D2216#92637, @Stan wrote:

Maybe the mask option could be a setting so that users can hide the minimap as well ? Eventually triggered by a hotkey.

I suppose it's possible by the regular hidden setting.

Aug 26 2019, 6:41 PM

Aug 25 2019

vladislavbelov added inline comments to D1478: Clean lots of cinema includes.
Aug 25 2019, 8:47 PM

Aug 24 2019

vladislavbelov added inline comments to rP22689: Move GUI<>::FallBackSprite and GUI<>::FallBackColor to CGUIColor::operator||….
Aug 24 2019, 9:39 PM
vladislavbelov accepted D2220: Fix L10n::FormatMillisecondsIntoDateString memory leak in rP18725.

The problem with such libraries, that an object is allocated in one place, but freed in a completely different place.

Aug 24 2019, 6:45 PM
vladislavbelov updated the summary of D2216: Adds a LOS mask to Minimap.
Aug 24 2019, 1:03 AM
vladislavbelov updated the summary of D2216: Adds a LOS mask to Minimap.
Aug 24 2019, 1:02 AM
vladislavbelov created D2216: Adds a LOS mask to Minimap.
Aug 24 2019, 12:49 AM

Aug 23 2019

vladislavbelov added inline comments to rP22765: Replace copy-assigning GUI<T>::GetSetting from rP31 with the reference….
Aug 23 2019, 6:26 PM
vladislavbelov added inline comments to rP22765: Replace copy-assigning GUI<T>::GetSetting from rP31 with the reference….
Aug 23 2019, 6:18 PM
vladislavbelov added inline comments to rP22744: Use variadic template for RecurseObject from rP31 and move it from GUIutil to….
Aug 23 2019, 1:05 PM
vladislavbelov raised a concern with rP22695: Remove IsBoolTrue helper function from rP7289..

The commit broke button hover (in session) and minimap camera dragging (at least on Windows). As far as I see, we shouldn't reset states for visible objects.

Aug 23 2019, 2:02 AM

Aug 22 2019

vladislavbelov committed rP22755: Cleanup Camera and CGameView, removes a not needed method and refactors classes..
Cleanup Camera and CGameView, removes a not needed method and refactors classes.
Aug 22 2019, 10:50 PM
vladislavbelov closed D2195: Cleanup Camera and CGameView.
Aug 22 2019, 10:50 PM
vladislavbelov added inline comments to D2197: Add support for recording replay metadata when in nonvisual mode.
Aug 22 2019, 1:23 PM
vladislavbelov added inline comments to D2197: Add support for recording replay metadata when in nonvisual mode.
Aug 22 2019, 12:49 PM
vladislavbelov added inline comments to D2207: Adds a function to pick entities with obstructions on screen.
Aug 22 2019, 1:50 AM
vladislavbelov added a comment to D2195: Cleanup Camera and CGameView.

@wraitii any thoughts about updated patch? Is it acceptable?

Aug 22 2019, 1:32 AM

Aug 21 2019

vladislavbelov updated the diff for D2195: Cleanup Camera and CGameView.

Fixes compiler warnings from @Stan.

Aug 21 2019, 10:40 PM
vladislavbelov added inline comments to D2127: ScriptInterface CreateObject performance improvement.
Aug 21 2019, 9:55 PM
vladislavbelov added inline comments to D2127: ScriptInterface CreateObject performance improvement.
Aug 21 2019, 9:50 PM
vladislavbelov added inline comments to rP22680: Improve performance of ScriptInterface::CreateObject from rP22528 / D2080 by….
Aug 21 2019, 9:45 PM
vladislavbelov added inline comments to D2127: ScriptInterface CreateObject performance improvement.
Aug 21 2019, 9:44 PM
vladislavbelov added a comment to D2196: Fixes values of clip planes in PostProcManager.
In D2196#91706, @elexis wrote:

So the idea is that it should use m_ViewCamera (from rP3405) instead of g_Game->GetView().

Not quite right, m_ViewCamera is the current camera of Renderer (which can be changed during frame rendering, currently for shadow maps), but here we need exact values used for the final frame before postprocessing.

Aug 21 2019, 8:56 PM
vladislavbelov added inline comments to rP22744: Use variadic template for RecurseObject from rP31 and move it from GUIutil to….
Aug 21 2019, 3:53 PM
vladislavbelov added a comment to rP22741: Use CGUI& instead of CGUI* so that the 50+ users stop wondering whether or not….

The commit message seems incomplete to me, I don't see any proofs for "so that the 50+ users stop wondering" in the commit message nor the diff description.

Aug 21 2019, 12:54 PM
vladislavbelov added inline comments to D2207: Adds a function to pick entities with obstructions on screen.
Aug 21 2019, 11:21 AM
vladislavbelov created D2207: Adds a function to pick entities with obstructions on screen.
Aug 21 2019, 2:30 AM
vladislavbelov added inline comments to D2206: Put CGUI BaseObject / CGUIDummyObject on the stack.
Aug 21 2019, 12:07 AM

Aug 20 2019

vladislavbelov added inline comments to D2206: Put CGUI BaseObject / CGUIDummyObject on the stack.
Aug 20 2019, 11:54 PM
vladislavbelov retitled D2196: Fixes values of clip planes in PostProcManager from Refactoring of PostProcManager to Fixes values of clip planes in PostProcManager.
Aug 20 2019, 11:38 PM
vladislavbelov updated the diff for D2196: Fixes values of clip planes in PostProcManager.

Committed cleanups separately in rP22738.

Aug 20 2019, 11:38 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.
In D2205#91665, @elexis wrote:

But I do remember precisely you recommending me to add if-safeguards for other places in the code even after I mentioned that it's always given, and then you even convinced me that it's a good idea to better be safe than sorry when it comes to null-deref.

I suppose nothing was changed. You have to use safeguards if you don't have guarantees of a pointer lifetime.

Aug 20 2019, 11:34 PM
vladislavbelov committed rP22738: Moves and cleanups includes and public/private section of PostprocManager..
Moves and cleanups includes and public/private section of PostprocManager.
Aug 20 2019, 11:15 PM
vladislavbelov committed rP22737: Fixes bug with disabled fog on water. The usage of USE_FOG was introduced in….
Fixes bug with disabled fog on water. The usage of USE_FOG was introduced in…
Aug 20 2019, 11:04 PM
vladislavbelov closed D2198: Fixes bug with disabled fog on water.
Aug 20 2019, 11:03 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.
In D2205#91651, @elexis wrote:

Fix the problem at the root and everything else follows along.

I can't say that the patch solves the problem at the root. It doesn't solve a real problem of GUI existence but it adds a visual confidence that the interface try/should to guarantee that.

Aug 20 2019, 10:57 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.
In D2205#91647, @elexis wrote:

If you get a reference you don't even have the thought "Do I need to check for null", whereas it's the first thought if you receive a pointer.
Even more it makes it impossible to check if the reference is null, so you don't have half the code with null checks and the other code without and some other code with ENSURE.
IMO GetGUI isn't adding anything

It answers to the "Do I need to check for null" question as it returns a reference. I'm not talking about how it stores GUI inside.

Aug 20 2019, 10:25 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.
In D2205#91624, @elexis wrote:

I still didn't claim that this guarantees the lifetime of the CGUI object.
I did and do claim that the lifetime is guaranteed by the way the code is designed and written, namely that GUIObjects are created inside a CGUI and that the CGUI destroys its objects before it is destroyed and that CGUI objects are never moved or to be moved from one GUI to another.

It's not the objection to your patch, it's just a note that reference isn't safe as it may seem.

Aug 20 2019, 9:52 PM
vladislavbelov added a comment to rP22638: Use NONCOPYABLE for most GUI classes and structs to have the compiler indicate….

We usually put NONCOPYABLE in a private section.

Aug 20 2019, 9:26 PM
vladislavbelov added a comment to D2195: Cleanup Camera and CGameView.
In D2195#91620, @Stan wrote:

@vladislavbelov will you fix the uninitialized members ?

Aug 20 2019, 9:23 PM
vladislavbelov added inline comments to D2195: Cleanup Camera and CGameView.
Aug 20 2019, 8:27 PM
vladislavbelov added a comment to D2195: Cleanup Camera and CGameView.

@elexis In my opinion yes to mostly all your So this should *. I think it's more clear. But currently I don't see a strong reason to modify the code only for reference <> pointer transformation.

Aug 20 2019, 8:26 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.

I'd suggest to replace all m_pGUI by GetGUI(), which can return whatever you want. Fo ex:

CGUI& GetGUI()
{
    ENSURE(m_pGUI);
    return *m_pGUI;
}
// or
CGUI& GetGUI()
{
    ENSURE(IsGUIStillValid(m_pGUI));
    return m_pGUI;
}
Aug 20 2019, 8:21 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.
In D2205#91544, @elexis wrote:

The point is, if you operate a CGUI* then you are not sure if it's allocated or not. But if it always is, then adding safeguards is only adding more code and saving from something that never happens.
The reference expresses that the CGUI is always allocated during its lifetime, thus it is making it even impossible to test if (m_pGUI) or if (pGUI).
The m_pGUI pointer exists since rP74.
The commit mentioned in the summary changed it so that CGUI is allocated on init rather than some cycles later (which is even making it faster, since the value is directly assigned to the correct pointer instead of to nullpointer and then to something else), aside from making it easier for all the users to consider it.
If you look at that commit referenced in the summary, you will see the previous cases in which it was set.
SetGUI was called on AddScrollBar, on CGUIDummyObject creation, for every child object created in AddObject, and prior to RegisterScriptHandler.

As far as I understand the patch the changes only shows to readers that the m_pGUI member can be used without the safeguard. It doesn't guarantee real lifetime of the CGUI object, as it's created on heap.

Aug 20 2019, 8:19 PM
vladislavbelov added inline comments to D2195: Cleanup Camera and CGameView.
Aug 20 2019, 8:03 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.

Another opinion:
https://google.github.io/styleguide/cppguide.html#Reference_Arguments

Aug 20 2019, 7:34 PM
vladislavbelov added inline comments to D2195: Cleanup Camera and CGameView.
Aug 20 2019, 7:29 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.
In D2205#91525, @elexis wrote:

From my experience such kind of changes doesn't really improve a code and usually adds some difficulty.

Using a reference removes the difficulty here.

I didn't find storying of reference in gui objects before. So it seems that you already implicitly added a strict property to GUI objects.

Aug 20 2019, 7:18 PM
vladislavbelov added a comment to D2205: Use CGUI& instead of CGUI*.

we do not need to check whether the CGUI page exists or not.

Reference doesn't guarantee that. From my experience such kind of changes doesn't really improve a code and usually adds some difficulty.

Aug 20 2019, 5:39 PM
vladislavbelov added inline comments to D2196: Fixes values of clip planes in PostProcManager.
Aug 20 2019, 3:29 PM
vladislavbelov added a comment to D2196: Fixes values of clip planes in PostProcManager.

Looks alright, but calling it a 'refactoring' is a bit misleading imo, I'd avoid it in the commit message :)

I can't say that it's a bug fix or a cleanup. What's about "Uses correct clip planes values in PostProcManager"?

Aug 20 2019, 2:05 PM
vladislavbelov created D2198: Fixes bug with disabled fog on water.
Aug 20 2019, 2:36 AM
vladislavbelov created D2196: Fixes values of clip planes in PostProcManager.
Aug 20 2019, 2:02 AM
vladislavbelov created D2195: Cleanup Camera and CGameView.
Aug 20 2019, 1:29 AM

Aug 12 2019

vladislavbelov added inline comments to D2168: Move CGUI::GenerateText to CGUIText ctor and split into helper functions.
Aug 12 2019, 1:35 AM

Aug 10 2019

vladislavbelov accepted D2167: Split GUItext.h and CGUIString.h.
Aug 10 2019, 9:09 PM
vladislavbelov added a comment to D2167: Split GUItext.h and CGUIString.h.

Why CGUIString, but _GUItext? Maybe rename that too?

Aug 10 2019, 8:45 PM

Jul 30 2019

vladislavbelov added inline comments to D2127: ScriptInterface CreateObject performance improvement.
Jul 30 2019, 6:30 PM
vladislavbelov added inline comments to D2127: ScriptInterface CreateObject performance improvement.
Jul 30 2019, 6:16 PM

Jul 29 2019

vladislavbelov added inline comments to rP22573: Add missing CPos FromJSVal, ToJSVal following rP1540..
Jul 29 2019, 2:35 PM
vladislavbelov added a comment to D2088: Fix uncaught nullptr exception in TextureManager.

Could you add a context to the patch?

Jul 29 2019, 2:25 PM
vladislavbelov added inline comments to D2101: Re-D2013 - Fix incorrect use of setlocale() in cppformat CStr tests.
Jul 29 2019, 2:24 PM
vladislavbelov added inline comments to rP22573: Add missing CPos FromJSVal, ToJSVal following rP1540..
Jul 29 2019, 2:12 PM
vladislavbelov added inline comments to D2116: Avoid copying CChart m_Points following rP19027.
Jul 29 2019, 2:07 PM
vladislavbelov added a comment to D2125: VS2013 Grid.h memset fallback.

Why not to use std::fill? Does it produce the warning?

Jul 29 2019, 1:58 PM
vladislavbelov added inline comments to D2127: ScriptInterface CreateObject performance improvement.
Jul 29 2019, 1:54 PM
vladislavbelov added inline comments to rP22528: Provide ScriptInterface CreateObject and CreateArray functions to replace Eval….
Jul 29 2019, 1:48 PM

Jul 25 2019

vladislavbelov committed rP22548: Fixes compiler warning about unused variable introduced in rP22445..
Fixes compiler warning about unused variable introduced in rP22445.
Jul 25 2019, 1:25 AM
vladislavbelov committed rP22547: Refactors Camera aspect ratio and calculation of plane points..
Refactors Camera aspect ratio and calculation of plane points.
Jul 25 2019, 1:08 AM
vladislavbelov closed D2020: Refactors Camera aspect ratio and calculation of plane points.
Jul 25 2019, 1:08 AM

Jul 17 2019

vladislavbelov added inline comments to rP22487: Remove Vector2D/Vector3D prototype workaround from EngineScriptConversions..
Jul 17 2019, 12:04 AM

Jul 16 2019

vladislavbelov added inline comments to D2084: Remove CMapGeneratorWorker struct AutoFree.
Jul 16 2019, 11:59 PM
vladislavbelov added a comment to D2079: Adds snapping to edges for buildings.

Why put this behind a hotkey?

Jul 16 2019, 5:18 PM
vladislavbelov added inline comments to D2030: Update wxWidgets readme [VS2013 -> VS2015].
Jul 16 2019, 11:56 AM
vladislavbelov updated subscribers of D2076: Make wxWidgets 3.0 build requirement more explicit.

What's about Ubuntu 14.04? We still have such audience (judging by feedback statistics).

Jul 16 2019, 2:00 AM

Jul 15 2019

asterix awarded D2079: Adds snapping to edges for buildings a Party Time token.
Jul 15 2019, 9:49 PM
nani awarded D2079: Adds snapping to edges for buildings a Party Time token.
Jul 15 2019, 12:59 AM
elexis awarded D2079: Adds snapping to edges for buildings a Orange Medal token.
Jul 15 2019, 12:53 AM
vladislavbelov created D2079: Adds snapping to edges for buildings.
Jul 15 2019, 12:20 AM

Jul 13 2019

vladislavbelov updated the diff for D2020: Refactors Camera aspect ratio and calculation of plane points.

Fixes @elexis's notes from IRC (2019-07-03#0ad-dev):

Jul 13 2019, 9:54 PM

Jul 12 2019

vladislavbelov added inline comments to D2058: FixedVector2D CompareLengthSquared.
Jul 12 2019, 12:34 PM

Jul 9 2019

vladislavbelov committed rP22445: Adds an tool to pick water high by terrain click in Atlas..
Adds an tool to pick water high by terrain click in Atlas.
Jul 9 2019, 8:17 PM
vladislavbelov closed D2037: [ATLAS] Adds a tool to pick water high by terrain click.
Jul 9 2019, 8:17 PM
vladislavbelov added inline comments to D2055: Fix 4500 gcc 8, gcc 9 compile warnings.
Jul 9 2019, 1:44 AM
vladislavbelov accepted D2055: Fix 4500 gcc 8, gcc 9 compile warnings.
Jul 9 2019, 1:33 AM
vladislavbelov added inline comments to D2055: Fix 4500 gcc 8, gcc 9 compile warnings.
Jul 9 2019, 1:26 AM
vladislavbelov added inline comments to D2055: Fix 4500 gcc 8, gcc 9 compile warnings.
Jul 9 2019, 12:54 AM

Jul 8 2019

vladislavbelov added inline comments to D2055: Fix 4500 gcc 8, gcc 9 compile warnings.
Jul 8 2019, 11:59 PM

Jul 7 2019

vladislavbelov added a comment to D2043: Fix build without precompiled headers following Atlas UTF8 fix rP22335 and ThreadUtil fix rP22344.

Reviewed on IRC (from few days).

Jul 7 2019, 11:45 PM
vladislavbelov accepted D2043: Fix build without precompiled headers following Atlas UTF8 fix rP22335 and ThreadUtil fix rP22344.
Jul 7 2019, 11:45 PM

Jul 6 2019

vladislavbelov added a comment to D2019: [ATLASUI] Main Thread Checker: UI API called on a background thread: -[NSView initWithFrame:].

Did someone test it with an old platform?

Jul 6 2019, 2:30 AM

Jul 5 2019

vladislavbelov added a comment to D2043: Fix build without precompiled headers following Atlas UTF8 fix rP22335 and ThreadUtil fix rP22344.

Why you didn't change implementation too?

Jul 5 2019, 7:55 PM
vladislavbelov added a comment to D2040: Improve performance Object List Filter Atlas.

What's the minimal wxWidgets version that supports wxListView?

Jul 5 2019, 12:37 PM

Jul 4 2019

elexis awarded D2037: [ATLAS] Adds a tool to pick water high by terrain click a Like token.
Jul 4 2019, 9:29 AM
vladislavbelov added a comment to D2029: Alt+tab fix for rP22314 - call IdleTask in Atlas and swap buffers only once.

needs some investigation.

Have you some results? Did you reproduce Stan's issue?

Jul 4 2019, 2:51 AM