Page MenuHomeWildfire Games
Feed Advanced Search

Aug 16 2022

phosit added a comment to D4766: [WIP] PS::Execution.

Gotta have to check those includes, lots are missing.

I deliberately omitted thous wich are already included in Execution.h. I'll add them in the next diff

Aug 16 2022, 6:20 PM
phosit requested review of D4766: [WIP] PS::Execution.
Aug 16 2022, 4:20 PM

Aug 15 2022

phosit requested review of D4764: vector of locale in L10n.
Aug 15 2022, 5:40 PM
phosit added inline comments to D4705: Remove sys_generate_random_bytes.
Aug 15 2022, 3:11 PM
phosit added inline comments to D4705: Remove sys_generate_random_bytes.
Aug 15 2022, 2:50 PM

Aug 14 2022

phosit added a comment to D4761: remove cassert.

I don't think the condition is useful without context. But i'm ok if i should leave it that way.

Aug 14 2022, 10:38 PM
phosit added a comment to D4761: remove cassert.

Have you checked MSVC output in case of an error?

Aug 14 2022, 10:09 PM
phosit requested review of D4761: remove cassert.
Aug 14 2022, 3:51 PM

Aug 13 2022

phosit added a comment to D4743: Ignore broken symlinks.

Acording to https://trac.wildfiregames.com/wiki/Coding_Conventions#Errorreporting we should not use LOGWARNING:
"only use things defined in source/lib/"

Aug 13 2022, 7:05 PM
phosit abandoned D4759: UTF-8 as execution caracter set.

It is already UTF-8‽ So it should be possible to replace wchar_t by char in most places.

Aug 13 2022, 2:26 PM
phosit requested review of D4759: UTF-8 as execution caracter set.
Aug 13 2022, 1:56 PM
phosit added a comment to D4758: Rearrange GC scheduling for reduced lag.

Realy nice improvement... and less controversal than the allocator.

Aug 13 2022, 12:04 PM

Jul 28 2022

phosit added inline comments to D4718: Allocator and generator for component data..
Jul 28 2022, 11:28 AM

Jul 27 2022

phosit added a comment to D4743: Ignore broken symlinks.

Acording to https://trac.wildfiregames.com/wiki/Coding_Conventions#Errorreporting we should not use LOGWARNING:
"only use things defined in source/lib/"

Jul 27 2022, 1:54 PM

Jul 26 2022

phosit updated the diff for D4743: Ignore broken symlinks.
Jul 26 2022, 7:27 PM
phosit added inline comments to D4718: Allocator and generator for component data..
Jul 26 2022, 5:41 PM
phosit added inline comments to D4718: Allocator and generator for component data..
Jul 26 2022, 11:46 AM

Jul 25 2022

phosit added a comment to D4743: Ignore broken symlinks.
In D4743#201740, @Stan wrote:

Might try filesystem if that works. I don't remember if nothing worked, or only a subset.

Jul 25 2022, 10:33 PM
phosit added a comment to D4743: Ignore broken symlinks.
In D4743#201732, @Stan wrote:

They trigger Assertion popups. You're free to ignore suppress them. Except in Atlas where it goes south and crashes the entire game.

Jul 25 2022, 9:49 PM
phosit updated the diff for D4743: Ignore broken symlinks.

Handle error also on windows (hopefully i can't test ^^)

Jul 25 2022, 9:42 PM
phosit added a comment to D4743: Ignore broken symlinks.

Why do WARN_ON_ERROR and WARN_RETURN abort the program? shouldn't they warn as the name says?

Jul 25 2022, 9:04 PM
phosit added inline comments to D4743: Ignore broken symlinks.
Jul 25 2022, 12:06 PM
phosit added a comment to D4743: Ignore broken symlinks.

Before applying the patch I would get the following output

Terminal output
❯ pyrogenesis
TIMER| InitVfs: 2.513 ms
FILES| Main log written to '/Users/paria/Library/Application Support/0ad/logs/mainlog.html'
FILES| Interesting log written to '/Users/paria/Library/Application Support/0ad/logs/interestinglog.html'
TIMER| CONFIG_Init: 6.691 ms
Function call failed: return value was -110301 (Error during IO)
Location: file_system.cpp:123 (GetDirectoryEntries)

Call stack:

(error while dumping stack: Function not supported)
errno = 2 (Error during IO)
OS error = ?

I also got an "Error during IO" but why? it is not EIO?

Jul 25 2022, 12:02 PM

Jul 24 2022

phosit updated the diff for D4743: Ignore broken symlinks.

Include logger

Jul 24 2022, 10:35 PM
phosit requested review of D4743: Ignore broken symlinks.
Jul 24 2022, 10:20 PM
phosit requested review of D4739: Return terrain reference from CWorld.
Jul 24 2022, 1:36 PM

Jul 22 2022

phosit updated the diff for D4705: Remove sys_generate_random_bytes.

fix test

Jul 22 2022, 8:21 PM
phosit updated the diff for D4705: Remove sys_generate_random_bytes.
In D4705#201569, @Stan wrote:

Header date, the test has been lost,

Jul 22 2022, 7:13 PM
phosit added a comment to D4735: Move all buildings to the builder mixin.

In most civs this looks weird: wall; tower; tower; wall; tower
IMO we shouldn't sort by phase.

Could you expand on that / how would you sort it ?
Rather by function e.g. eco buildings p1, eco buildings p2, military buildings p1 .... Ect?

Jul 22 2022, 7:06 PM
phosit updated the diff for D4705: Remove sys_generate_random_bytes.
  • braces
  • function names
  • CStr

Did i miss something?

Jul 22 2022, 3:56 PM
phosit added inline comments to D4705: Remove sys_generate_random_bytes.
Jul 22 2022, 3:29 PM
phosit added a comment to D4735: Move all buildings to the builder mixin.

In most civs this looks weird: wall; tower; tower; wall; tower
IMO we shouldn't sort by phase.

Jul 22 2022, 11:01 AM
phosit added inline comments to D4705: Remove sys_generate_random_bytes.
Jul 22 2022, 10:32 AM

Jul 21 2022

phosit added inline comments to D4705: Remove sys_generate_random_bytes.
Jul 21 2022, 1:04 PM
phosit updated the diff for D4705: Remove sys_generate_random_bytes.

I forgot to add the test file

Jul 21 2022, 12:03 PM
phosit updated the diff for D4705: Remove sys_generate_random_bytes.
  • Test
  • helper function
  • return std::string
Jul 21 2022, 11:52 AM

Jul 20 2022

phosit added inline comments to D4705: Remove sys_generate_random_bytes.
Jul 20 2022, 7:37 PM
phosit added a comment to D4730: Type-erased SharedState.

I'll try to embed the SharedState in to Future. or i join the diff with one that adds continuation.

Jul 20 2022, 7:19 PM

Jul 19 2022

phosit added inline comments to D4705: Remove sys_generate_random_bytes.
Jul 19 2022, 7:06 PM
phosit updated the diff for D4705: Remove sys_generate_random_bytes.

Never mind my comments about lib/rand.h
just implement CUserReporter::LoadUserID() in terms of ps_generate_guid()

Jul 19 2022, 12:38 PM

Jul 18 2022

phosit added a comment to D4705: Remove sys_generate_random_bytes.

I would

  • rewrite lib/rand.h to use "better" randomnes (and std distribution).
  • use this new implementation were sys_generate_random_bytes is used now.
Jul 18 2022, 5:19 PM
phosit added a comment to D4705: Remove sys_generate_random_bytes.
In D4705#201372, @Stan wrote:

Somewhere in lib we have some stuff about random used by the soundmanager there IIRC.

Jul 18 2022, 3:51 PM
phosit abandoned D4573: Atlas: Close the Actor Viewer if you leave the object tab.

It doesn't realy solve the problem.

Jul 18 2022, 3:09 PM
phosit added a comment to D4705: Remove sys_generate_random_bytes.
In D4705#201366, @Stan wrote:

Can you make this a helper function or something to remove the duplication ?

Jul 18 2022, 3:04 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

Apply comments from vladislavbelov

Jul 18 2022, 3:03 PM
phosit updated the diff for D4705: Remove sys_generate_random_bytes.

Use falback if entroby is zero.

Jul 18 2022, 2:25 PM

Jul 17 2022

phosit added inline comments to D4677: span and string_view for CmdLineArgs.
Jul 17 2022, 5:39 PM
phosit added inline comments to D4677: span and string_view for CmdLineArgs.
Jul 17 2022, 1:52 PM
phosit added a comment to D4705: Remove sys_generate_random_bytes.

Don't we have regression here?

std::random_device may be implemented in terms of an implementation-defined pseudo-random number engine if a non-deterministic source (e.g. a hardware device) is not available to the implementation. In this case each std::random_device object may generate the same number sequence.

So it might produce the same sequence for each std::random_device. So more players might have the same ID on the same platform version.

Jul 17 2022, 1:26 PM

Jul 4 2022

phosit added a comment to D4730: Type-erased SharedState.

Usually the overhead from std::function<> comes from one of two sources:

  1. Heap allocation for the functor/function pointer/callable std::function is wrapping (https://devblogs.microsoft.com/oldnewthing/20200514-00/?p=103749), including CPU cache misses when following the pointer
  2. Indirection when invoking the type erased std::function through a virtual method call

I'd expect 1. to dominate in most cases given a cache miss all the way out to main memory takes ~100+ clock cycles. If we really want to avoid std::function overhead, we can write our own std::function lookalike with more in-situ storage to avoid dereferencing a pointer in the hot path (https://jprahman.substack.com/p/software-performance-cache-locality). Alternatively, lambda captures used for callbacks can have fewer captures to fit in the typical 16 bytes of in-situ storage most std::function implementations offer.

Jul 4 2022, 8:15 PM

Jul 3 2022

phosit requested review of D4730: Type-erased SharedState.
Jul 3 2022, 10:45 PM

Jul 2 2022

phosit updated the diff for D4682: Profiler2 lives in main().
  • One coment from Stan
  • Lint
Jul 2 2022, 3:14 PM
phosit added inline comments to D4682: Profiler2 lives in main().
Jul 2 2022, 2:57 PM
phosit updated the diff for D4682: Profiler2 lives in main().

optional -> unique_ptr
ENSURE more in the constructor
reset to nullptr in the destructor

Jul 2 2022, 9:28 AM

Jun 28 2022

phosit added inline comments to D4718: Allocator and generator for component data..
Jun 28 2022, 6:20 PM

Jun 25 2022

phosit added inline comments to D4728: No recursive calls in FunctionWrapper.h.
Jun 25 2022, 8:49 PM
phosit updated the diff for D4728: No recursive calls in FunctionWrapper.h.

remove repackaging in to tuple

Jun 25 2022, 8:44 PM
phosit added inline comments to D4728: No recursive calls in FunctionWrapper.h.
Jun 25 2022, 6:36 PM
phosit added inline comments to D4728: No recursive calls in FunctionWrapper.h.
Jun 25 2022, 5:23 PM
phosit added a comment to D4728: No recursive calls in FunctionWrapper.h.
In D4728#200776, @Stan wrote:

Does it make that code slower?

Jun 25 2022, 1:44 PM
phosit requested review of D4728: No recursive calls in FunctionWrapper.h.
Jun 25 2022, 11:38 AM
phosit added inline comments to D4718: Allocator and generator for component data..
Jun 25 2022, 10:11 AM

Jun 23 2022

phosit added a comment to D4682: Profiler2 lives in main().

Should g_Profiler2 be reset in the destructor? to nullptr or to the pointer g_Profiler2 was bevore the constructor was called?.

Jun 23 2022, 9:15 PM

Jun 22 2022

phosit added inline comments to D4718: Allocator and generator for component data..
Jun 22 2022, 3:29 PM

Jun 18 2022

phosit requested review of D4705: Remove sys_generate_random_bytes.
Jun 18 2022, 4:54 PM
phosit accepted D4617: Restrict access for Read/WriteFile functions.

I don't see a problem with this going into a26

Jun 18 2022, 11:03 AM

Jun 17 2022

phosit updated the diff for D4689: Cleanup CShaderParams::SItems comparisons.

forgot context
rename NameCmp -> NameLess

Jun 17 2022, 5:59 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

if constexpr -> #if

Jun 17 2022, 5:33 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

I messed it up with another diff

Jun 17 2022, 5:10 PM
phosit added inline comments to D4677: span and string_view for CmdLineArgs.
Jun 17 2022, 4:51 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

coments from Vladislav
CStr could not be constructed from std::string_view. Now CStr inherits all constructors from std::string

Jun 17 2022, 4:33 PM

Jun 16 2022

phosit added inline comments to D4702: Groups close minimap icons to decrease their visible count.
Jun 16 2022, 4:25 PM
phosit added a comment to D4702: Groups close minimap icons to decrease their visible count.

some thaughts on algorithm, feel free to ignore them :)

Jun 16 2022, 10:10 AM
phosit added a comment to D4702: Groups close minimap icons to decrease their visible count.

Are we talking about introducing those icons. I like the them but they are a litle to big.
Sometimes the icon is over the icon of the CC and sometimes below it.

Jun 16 2022, 10:02 AM

Jun 13 2022

phosit updated the diff for D4689: Cleanup CShaderParams::SItems comparisons.

rP26939 solves the "main" issue but this diff go's further

Jun 13 2022, 9:20 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

suggested by wraitii: value readability over optimization

Jun 13 2022, 8:31 PM
phosit updated the diff for D4664: Non-local condition_variable.

remove two unused members of Impl

Jun 13 2022, 7:43 PM
phosit added a comment to D4682: Profiler2 lives in main().

In my understanding is a singleton-class a class made for only one object: static Instance method; editing global/static "single" variables in constructor/destructor... by single i mean if it stores this inside a vector(to track all instances) its not a singleton-class but when it stores this in a single global pointer it is a singleton-class since it "shadows" the old pointer.
A singleton(-object) i would refer to as an object of a singleton-class. Otherwise every global variables would be a singleton since there is only one of it.

Jun 13 2022, 6:52 PM

Jun 12 2022

phosit updated the diff for D4682: Profiler2 lives in main().
  • assigne g_Profiler2 also in the tests
  • edit some coments in Profiler2.h
Jun 12 2022, 7:28 PM
phosit added inline comments to D4682: Profiler2 lives in main().
Jun 12 2022, 6:14 PM
phosit added inline comments to D4673: [NetClient] Clean up g_xmppClient checking.
Jun 12 2022, 6:08 PM
phosit added a comment to D4682: Profiler2 lives in main().

Per https://trac.wildfiregames.com/wiki/Coding_Conventions, we have Prefer global variables over singletons, because then they're not trying to hide their ugliness. It's definitely something I kind of like, because singletons by design make it annoying to have two of something, and that can occasionally be useful.

I like basically all of the changes here, but I think you should just make it a regular global.

Jun 12 2022, 5:51 PM
phosit updated the diff for D4682: Profiler2 lives in main().

not a singleton anymore.

Jun 12 2022, 5:23 PM
phosit added a comment to D4673: [NetClient] Clean up g_xmppClient checking.

Yes looks good, thanks for solfing the tiket.

Jun 12 2022, 11:53 AM

Jun 8 2022

phosit added inline comments to D4677: span and string_view for CmdLineArgs.
Jun 8 2022, 6:13 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

Remove note about msvc

Jun 8 2022, 6:03 PM
phosit added inline comments to D4677: span and string_view for CmdLineArgs.
Jun 8 2022, 1:40 PM

Jun 7 2022

phosit requested review of D4689: Cleanup CShaderParams::SItems comparisons.
Jun 7 2022, 9:23 PM
phosit updated the diff for D4682: Profiler2 lives in main().

adjust comments in main

Jun 7 2022, 7:04 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

The last fix was kind of overkill

Jun 7 2022, 6:27 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

hopefuly fix for msvc-debug

Jun 7 2022, 5:08 PM
phosit added a comment to D4682: Profiler2 lives in main().

good

new CRenderer;
delete &g_Renderer;

should not generate memory leaks.

Jun 7 2022, 4:00 PM
phosit added a comment to D4682: Profiler2 lives in main().
In D4682#199088, @Stan wrote:

Doesn't that crash if you actually try to use it? IIRC you need to new it somewhere and &~dtor it elsewhere

Jun 7 2022, 3:31 PM
phosit accepted D4642: Add EGL support for Wayland.

I use Sway. The window opens always on the same monitor and not were my mouse is. Minor problem and likely not our responsability.

Jun 7 2022, 12:07 PM

Jun 3 2022

phosit added a comment to D4677: span and string_view for CmdLineArgs.

which version of xcode does jenkins use? string_view neads at least xcode10

Jun 3 2022, 7:50 PM
phosit updated the diff for D4677: span and string_view for CmdLineArgs.

explicit std::array in tests

Jun 3 2022, 7:44 PM
phosit updated the diff for D4682: Profiler2 lives in main().

g_Profiler2 is now a macro

Jun 3 2022, 6:00 PM
phosit updated the diff for D4682: Profiler2 lives in main().

remove g_Profiler2 use Singleton

Jun 3 2022, 4:12 PM
phosit requested review of D4682: Profiler2 lives in main().
Jun 3 2022, 3:08 PM
phosit updated the diff for D4668: Algorithms in renderer/WaterManager and iota_view.

reverse protoVertex
and msvs should build

Jun 3 2022, 2:26 PM