abakobo

Forum Replies Created

Viewing 15 posts - 16 through 30 (of 455 total)
  • Author
    Posts
  • in reply to: Bool=Null vs Bool=False? #16051

    abakobo
    Participant

    In monkey every type can be null. In other typed languages like cpp, only pointers can be null.
    So in monkey only referenced types (ie classes and arrays) can have the ‘real’ Null value.
    The other types (ints, floats, bool,…) will have a zero/false value as null. And there is no difference between null and zero/false.

    in reply to: Polygonal Decomposition – Concavity Support #16007

    abakobo
    Participant

    I have finnnallly finished the complex polygon (positive)partitionning. I had made a lot of mistakes and the problem was a bit difficult. But it’s there. It just won’t allow collinear&intersecting segment at the “edge” of the poly.
    If anybody wants to try it, the code is attached. Run polytoolstest.monkey2 for demo. It is not decomposing to convex polys yet.

    in reply to: Generic array field syntax? #15979

    abakobo
    Participant

    Generics are always associated with a function, class or struct. Generic interfaces were not available, I think it’s not available yet.

    in reply to: Polygonal Decomposition – Concavity Support #15949

    abakobo
    Participant

    Ah Ok shader stufff!?

    Yes splitting a convex to convex is pretty straightforward… thx again.

    in reply to: Polygonal Decomposition – Concavity Support #15942

    abakobo
    Participant

    LOL! You could not do it at a better time for me as I was going to use Mark Bayazit’s algorithm for this purpose (https://mpen.ca/406/bayazit). I suppose you do it for box2d. Have you implemented the max number of vertices=8 ?

    I’m working on a box2dxt function to decompose complex polygons and I’ve nearly finished the step of decomposing complex poly to simple polys now! so now I need concave decomp (and reduction to 8 vertices).

    You can see pictures (attached) of the “decomplexification” of complex polys 😉 Now I have to split and convex decomp it!

    So… great thx!

    Attachments:
    in reply to: Cross-platform Development in Monkey2 #15921

    abakobo
    Participant

    AFAIK Monkey2 is 100% compatible with C++11 and ANSI C, as long as your code is system agnostic!

    The only problem I got till now is endian.h on Mac (not system agnostic but every monkey2 system is “little endian” so you can bypass it) or sources that includes some other libs that are not especially available on every platform (not system agnostic again).

    For non cross-platform things, I’ve seen no Limits.

    Note that Unions, Generics and other things cannot be imported from C++ (Monkey2 is not C++). You’ll have to wrap it in some C++ code if you really need that part of your lib into monkey2. The frequent std::string and std::vector are a bit problematic and would deserve a convenience interfacing like CString/libc.char_t[] exists for const char*/char *.

    My wrapper for box2d has successfully been tested on every available system I have (i.e. Windows, Mac, Linux, Android, IOS, Emscriptem). (box2d is C++)

    in reply to: Help porting HMAC-SHA256 code #15903

    abakobo
    Participant

    I ported part of a library to get this done. Code is from https://create.stephan-brumme.com/hash-library/ . Please check for the license(MIT I think).

    I had to remove the call to endian.h because it’s a mess with OSX. This result in this port working on “Little Endian” OS/Hardware ONLY (which is all common now but I preffer to tell). (Networks seems to be “Big Endian” though!)
    Sorry not to review your code but for me it’s easyer to Import C++ code..

    I’m using a libc.char_t array to get my CString to avoid memory leaks.
    Hope it works well for you.

    Code in attached zip.

    PS: I’ve seen on StackOverflow that the most common problem with hashes is a confusion with chars and bytes.
    PS2: you could check the code in std.digest to see how the types are managed in there if you want to continue your mx2 education..

    Attachments:
    1. hmac256_64.zip
    in reply to: String to array of bytes? #15902

    abakobo
    Participant

    Geeting a char by string index actually returns a signed int! So that is a bit strange as the language reference states that Strings have 16 bit elements.

    I’ll have a look at your code but I must say I’m not really into bit shifting and all that stuff so I’m not sure I’ll be able to help.

    in reply to: String to array of bytes? #15899

    abakobo
    Participant

    Hi,

    Firt thing to know: CString is not a type you are supposed to use inside Monkey2. It’s a convenience type that will automaticaly translate a String to CString for a C/Cpp function. When you declare CString in your externals, the C func will be receiving a null terminated char* (ie a CString). Arrays in Monkey2 are Not C Arrays and thus if you want a real C type array in Monkey 2 you’ll have to malloc it yourself and use a “Ubyte Ptr”. Dereferencing it will then look like a “classic” array but you won’t have the “.Length” so you’ll have to store the size by yourself or check for null termination. You can malloc using databuffer too as i’ve seen you did. You’ll have to use libc.char_t type wich is the same as C’s char. In an Array or in a DataBuffer. And use the .Data To Get the first element.

    Secondly, Monkey2 String is 16 bit so you’ll have to ensure that you don’t meet any value exceeding the 8bit capability of your Ubytes. Or use UShorts if you can? I know there is some Char vs UTF8 thing. For me that’s where you get a problem in your quest.

    The probable easyest way to do what you want (for me) is to find a C function that do the stuff and import it in your project, there you’ll have to use of CString.

    String an Array are actulay defined in C++ and not in Monkey2 (bbTypes.h/bbTypes.cpp).

    If you post some C/C++ code I can write a wrapper for you if you’re not comfortable with externals.

    For Ascii funcs. If you reach a String element by index it will give you it’s int value. To transform that int value back to a string Use String.FromChar()

    in reply to: Windows Update: Deleted Monkey2 Folder #15847

    abakobo
    Participant

    Strange.. my W10 and Windows defender are up-to-date and Defender finds no viruses on my computer even with complete virus search. I have 7 different monkey2 folders. But only self compiled I think (I’m not even sure about that).

    in reply to: Integrated docs gitHub community organisation #15833

    abakobo
    Participant

    The mx2community fork is more an issue container than a base repo for pull requests. I personally directly use my mx2 fork for pull requests.
    I could sync the fork though.
    If you want admin privileges on the fork you can give your githhub nickname…

    in reply to: possible virus #15708

    abakobo
    Participant

    There has been some AV in past that had white listed monkey2. (I thought BitDefender did it)
    It’s most probably a false positive, and the message you get is probably because of a whitelist+heuristic strategy. The “.Heur” is an heuristic detection, so it has not formaly found a virus but think it is probably one. https://www.toptenreviews.com/software/articles/what-is-heuristic-antivirus-detection/
    But as Danilo said, if your devtools are infected, your compiled execs can be infected too..
    I abandoned super-AV’s and use now windows defender, mainly because those heuristic detections are a real PITA when combined with various programming languages.

    in reply to: When will eventproblem be fixed #15670

    abakobo
    Participant

    Ok could see some in macOS. But could not really “feel” anything different on W10.

    The perfs on MacOS with latest dev has a big problem as it tears big images draws. But the august version is still ok form me! Only after that I get really big perfs differences. Ran some mx2 builds at different commit points to see when this has happened.

    in reply to: When will eventproblem be fixed #15667

    abakobo
    Participant

    Thanks. I’ll reinstall latest monkey-x and have some tests.

    in reply to: When will eventproblem be fixed #15661

    abakobo
    Participant

    @sekaichi:

    I’m back on mx2. Could you give me the state of your analysis on this “event” problem? And also on the Mac/ios problem?
    I have a Mavericks, a ElCapitan, a HighSierra and a Mojave machine to run tests and would like to see what’s going on there (and if it is a problem for my game project as it is). I only have an IPhone6s for the ios tests though.

    Thx

Viewing 15 posts - 16 through 30 (of 455 total)