Jump to content

Dghelneshi

Staff
  • Content Count

    26
  • Joined

  • Last visited

  • Days Won

    5

Dghelneshi last won the day on November 9

Dghelneshi had the most liked content!

Community Reputation

26 Excellent

About Dghelneshi

  • Rank
    Civilian

Profile Information

  • Ingame Username
    Dghelneshi

Contact Methods

  • Steam
    STEAM_0:1:1017085

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Dghelneshi

    Could you upload the crash dump? You can find it by clicking on "User Data Folder" in the APB tab on the launcher, inside there should be a "debug" folder. Upload the newest file only. New HW seems decent so far, but we'll have to wait for more games with higher player counts. Low player counts make it very difficult to judge things since you might miss a cruiser going across the map and it will kill all your stuff before you can react, especially without Engineers. Unless I'm forgetting something we currently only have one map with both MiGs and Cruisers and then one other map for each unit seperately, which is a bit sad since we really want to show off those new units.
  2. Dghelneshi

  3. Dghelneshi

    After this fix, performance should be universally better than before 3.0. If your performance is worse than expected, check whether you have Anti-Aliasing on, particularly if you're on an integrated GPU ("MSAA Mode" in the launcher game settings or Options -> Configuration -> Performance -> Expert in the ingame menu). That option did nothing before 3.0, so you might have enabled it at some point without noticing.
  4. Dghelneshi

    From what I could find the problem with using BC7 for modern games is not just encoding speed for the large amount of textures, but mostly the sheer install size. With digital distribution, open world games, mobile games, etc. on the rise, this is a major concern (also in terms of loading speed, not everyone has 50GB of free space on an SSD yet, nevermind consoles!). Up until recently many engines also were designed with PS3 and Xbox 360 in mind, which do not have BC7 support, so all of this may be changing as we speak, there can be a surprising amount of inertia in certain parts of game tech. Most of your textures will be RGB with no alpha though, where the size delta to BC7 would just be too large. If you have very high res texture sources (which we usually don't, but AAA games do) and apply compression to your game files (which we don't do yet, but it's on the TODO list), you will get much higher quality out of your texture by just using BC1 at twice the resolution (4x uncompressed size) instead of BC7 (so 2x compressed size). You'd still have 2x the VRAM cost, but since BC7 has much higher information density, the disk size difference after using zip compression shrinks to something like 1.35x, so that might be worth it overall and the improvement in fidelity is enormous from the resolution (just did this on one texture for testing, size difference may vary depending on content). With the "clustered DXT" of Crunch and its commercial successor Basis there is a lot of additional work being done to make texture data even more compressible so that install sizes can be smaller even if VRAM usage stays the same (though quality suffers slightly). Quite a lot of games (including the Unity engine) have adopted these advanced modes of Crunch into their pipeline and since Crunch doesn't do BC7 this is another hurdle towards its adoption, though once Basis is more established this might change since it does have support (it's not free though). Edit: One good application for BC7 might be UI textures where quality and sharpness is very important, alpha is commonly used and BC3 often fails miserably. Many use uncompressed textures here. Note: Added a small note about mipmaps to the OP (below the ranking).
  5. In this tutorial I want to teach you how to get the best quality out of your textures when compressing them. What is DXT? DDS is a container format designed for texture data and can have different amounts of compression applied (including none). There are 3 major compression formats defined in the Direct3D 6 standard: DXT1, DXT3 and DXT5. These are also called BC1/2/3 ("Block Compression") respectively. Later versions added BC4/5 (D3D10) and BC6/7 (D3D11). Each of these have their own use cases and advantages, so higher numbers are not just "better" versions. The advantage of these compression formats compared to something more common like JPEG is that they can be uploaded to the GPU directly and always stay fully compressed in GPU memory. With hundreds of megabytes of textures this adds up quickly and allows us to improve performance (less memory bandwidth used) and target lower end/older GPUs with less VRAM. The decompression is implemented directly in hardware and happens transparently on memory access. The key ingredient for this to work is that the format is made out of independent 4x4 blocks of pixels that can be decompressed individually instead of the entire texture at once. A more thorough look at the details of the compression formats can be found here: http://www.reedbeta.com/blog/understanding-bcn-texture-compression-formats/ Which Format to Use? The DXT-Formats mostly differ in their handling of the alpha channel (usually used for transparency). Use BC1/DXT1 for pure RGB textures or hard "cut outs" which only need one bit of alpha (fully opaque or fully transparent) Use BC2/DXT3 for RGBA textures with discrete "hard" alpha transitions (this format has 4 bits of alpha per pixel, so 16 different levels of transparency) Use BC3/DXT5 for RGBA textures with smooth interpolated alpha (use this over BC2 unless you're certain) The data rate is constant regardless of image content: 4 bits per pixel for BC1 and BC4 and 8 bits per pixel for every other format. This means that BC1 should be used where applicable to save memory, don't forget the 1 bit of alpha comes (almost) free! BC2 use cases are rare, usually you probably want BC3. A nice overview of features and use cases for all BCn formats can be found here. Missing in this table is a particular trick for using DXT5 for better quality normal or bump maps explained here, also called DXT5nm or DXT5-xGxR and has direct support by a few tools (e.g. NVTT, see below). The more modern BC4-7 formats should generally be avoided for now since the older Renegade-compatible W3D engine can't load them at all, W3D 5.0 (APB, AR and BFD) can't load them yet (though afaik it would be trivial to add support) and most importantly, 3ds Max and many other programs cannot open them (BCn App Support). Nevertheless, we might have a specific need for one of these formats in the future that warrants their use despite the tooling issues and we can always just use the uncompressed source texture for the .max files. At some point in the future, I will specifically take a look at BC5 for optimum quality normal maps and general BC7 vs. BC3 quality since it should be tremendously better in most use cases at the same size. BC7 instead of BC1 should not be used frivolously due to being twice the size and also less amenable to further compression (e.g. zip) since it actually carries so much more information, but when you really need a near-lossless result, this will do it. Since the BC7 format is so much more complex, some encoders can take many hours for a single texture at high quality, but there are some faster ones out there (see below, so far I only tried Compressonator for BC7, will revisit this at some point). Which Exporter to Use? This is where we get the reason why I wrote this post in the first place. I noticed some textures looking awfully blocky ingame with obviously off-color artifacts, which was caused by an extremely bad DXT encoder. I then set out to compare different compressors and stared at textures for hours (I also used PSNR metrics, but visual inspection was much more useful). In total I tested 7 different tools with two DXT1 textures we had uncompressed sources for. First of all here's my personal ranking in terms of output quality: Crunch (download can be found here in the "bin" folder) tied with Nvidia Texture Tools (NVTT, download from "releases") Compressonator (download from "releases", also see here for Win7/8 issues) Paint.Net (https://www.getpaint.net/) GIMP with DDS plug-in (https://www.gimp.org/ and https://code.google.com/archive/p/gimp-dds/downloads) DirectXTex (download from "releases") DDS Converter (http://www.ddsconverter.com/, but I'd rather you throw it deep into the sea) To motivate you to switch from a different tool, let me detail the issues encountered with the different encoders (comparison images are in the spoiler below). Edit: No matter which tool you use, make sure it generates mipmaps. Some will do this by default, some don't (Compressonator). Some tools also offer the ability to specify gamma/sRGB for mipmap generation. With the current renderer this should be set to sRGB/2.2 (default for Crunch and NVTT). If you're unsure about gamma, use a checkerboard texture to replace a terrain texture ingame, disable anisotropic texture filtering and look off into the distance, with proper gamma it should look about medium gray (with lighting taken into account), otherwise it will look darker (like here). Edit2: If you're working with tiled textures (terrain, walls), make sure you're telling the compressor so it doesn't break the smooth tiling (e.g. -wrap for Crunch, -repeat for NVTT), though the difference is usually minimal. Crunch was originally developed for a more advanced purpose, so make sure you only use the command line options that produce a "normal" non-clustered output (in particular, do not use -bitrate or -quality). In terms of visual quality, it particularly excels at gradients and dark areas. NVTT is very close overall, with Crunch displaying better performance on gradients, while NVTT beats it at high-frequency detail. Note: Do not use this tool for BC7, unless you want to literally wait for days for a single texture even with the "fast" encoding option. Compressonator is one of the few tools to feature both a GUI and a command line interface, although the GUI can a bit weird to use. Make sure you generate mipmaps explicitly and set the quality to 1.0. In my experience the quality is always slightly behind Crunch/NVTT, but it's definitely not bad and it has been recommended a lot in the past. It was the only tool I tried that could output BC7 within a reasonable amount of time (35 seconds for a 4k texture with quality=0.05, though without comparison I can't speak for its visual quality). Paint.Net is not terrible but very clearly behind the other options. Gradients and dark areas suffer from banding and block artifacts and some areas appear darker than in the source or have their hue shifted to a different color. The uneven gradients make the "block" structure of the compression very visible. GIMP first disappoints with a "use perceptual error metric" option, which for unknown reasons makes the output worse rather than better. The output doesn't impress either way though, with even worse gradients and random hue shifts than Paint.Net. Surprisingly, it does fairly well at high-frequency detail, but that in no way makes up for its general poor performance. DirectXTex from Microsoft may sound like a natural pick, but sadly it is one of the worst encoders I have seen so far. Simple flat areas turn into a blocky mess of different colors that weren't in the source at all, gradients look horrible, etc. As with GIMP, it does fairly well at high-frequency detail, but in doing so it introduces severe noise across the entire texture, sometimes looking a little bit like the JPEG artifacts we all know and love. This compressor also supports BC7, so I may come back to it in the future. DDS Converter I haven't tested directly, but it was the source of the problems that caused me to investigate this issue in the first place. The quality is just godawful, in some parts it almost feels like the texture is lower resolution than it really is because entire 4x4 blocks share the same color for no particular reason, and it's not even the correct color! In addition, some detail introduces harsh artifacts and noise. I weep for all the people googling for "dds converter" and having to put up with shit quality textures because of this tool. Unfortunately, I haven't been able to take a look at the ISPC Texture Compressor yet since the provided GUI tool lacks functionality and there is no CLI available, so I'd have to write my own. They also offer a Photoshop plugin. I would expect similar quality to the top 3, but can't know for sure. Another tool I want to look at in the future is bc7enc16, a prototype for a full BC7 encoder. Comparison images in spoiler (Open up in full size! Note that some issues like darkening and discoloration are more visible in context): There's probably a lot more stuff I could talk about, but for now I've run out of gas. Any questions/suggestions are welcome.
  6. Dghelneshi

    That might be an interesting option, but they would have to be framed differently since the purchase icons are square and ideally have some sort of common style.
  7. Frank has high quality versions of the tracks streaming on his website, so they definitely exist!
  8. Dghelneshi

    WTF kind of CPU do you have that doesn't straight up shut down at 101°C?! That's an insanely unsafe temperature.
  9. Dghelneshi

    "Stair lag" is just a term I made up for the warping that happens regularly when you try to go up stairs, even on 0 ping. It's not an issue specific to stairs, it's just so incredibly frustrating to try and run up the WF or Refinery stairs for emergency repair and then end up at the bottom again after half a second.
  10. Dghelneshi

    Whoever fixed that is a hero. Now, if someone can fix stair lag and warping then we need to erect a statue or something...
  11. Dghelneshi

    Most laptop manufacturers will allow you to choose things like the size of SSD, HDD, RAM and sometimes from a small selection of CPUs and GPUs for a specific model, so I'm not talking about building a fully custom system (which in the case of laptops is obviously nearly impossible anyways). You (or rather your girlfriend, but I will keep addressing "you") will need to define what exactly you need yourself. I tried to condense it down to a small list so it's easier, but I am disinclined to choose a specific laptop for you to buy. Buying hardware for myself is already stressful enough, I don't really want to make someone else live with my choice (and it's a lot of work). For 2000$ you can get almost anything you want. You need to figure out any and all things that will disqualify a specific model for you personally and try to slim the list down and then decide based on what reviews say about things you may care about (you say that noise does not concern you, but working on a reasonably quiet laptop is still so much more enjoyable and it will only get worse over time). There is no perfect laptop and you will never make the perfect decision, but neither will I or anyone else. Edit: You can of course ask me more questions either here or on Discord, I'm just not going to wade through 50 reviews for you and make some arbitary choice.
  12. Dghelneshi

    Cooling and TDP I'm putting this at the top because the general problem with laptops is that every single brand and model can perform differently even if they have mostly the same hardware in it (mainly CPU and GPU). This is because the hardware (CPU in particular) can be configured for different amounts power consumption and the cooling solutions can be vastly different (rule of thumb: the slimmer/lighter, the worse the cooling). E.g. the stock i7-7700HQ is meant to consume 45W of power at typical workloads. This is called TDP or Thermal Design Power and is measured according to a completely arbitrary definition by the CPU manufacturer and does explicitly not mean maximum power consumption. The laptop manufacturer can configure TDP down to 35W if they believe their cooling solution cannot handle it and the CPU will reduce the clock frequency accordingly. Some CPUs can also be configured to use more power instead (usually only the lower power parts). This is never mentioned anywhere in the specs and needs to be tested in reviews. Another important factor is that both workstation and gamer laptops have a lot of problems with heat since you simply can't put as large fans and cooling surface into that case as in a desktop PC, especially since slim and light designs are desired by the consumers. In the worst case you get something that sounds like a jet engine most of the time and sometimes even throttles the performance due to temperature limits. Any laptop with high-performance parts in it will make noise, it's just a matter of degree. I can't give general recommendations as it's model-specific; even though I'm fairly happy with the cooling on my Acer VX15, it's pretty bulky as a result, has little space for a decent battery and also looks kinda ridiculous. You will need to read multiple reviews for every model you consider buying to at least get an idea of how good the cooling solution is relative to other models and which performance level the CPU is configured at, there's unfortunately no way around that. CPU I only have little experience with CAD software, but I'm pretty sure any of these programs will eat CPU for breakfast. CAD programs need to solve a vast amount of difficult equations to generate parameterized models. Some of these processes will be single-threaded and thus high core count is not the only desirable thing, you want high frequency as well. AutoCAD in particular I found to be kinda middling at multi-threading, some parts scale well, but many common parts just require high frequency on one to two cores. What does scale really well to an arbitrary amount of cores is actually rendering a professional output image from a 3D model, but I'm not sure how often you need to do that on a laptop (mostly if you want to iterate on it and preview regularly; the final image will still take hours). I do not own a copy of any of the other programs you listed, but quick googling suggests they are kinda similar in that they like to have more than 2 CPU cores, but most tasks will not scale well beyond 4 cores. Advice for CPU models: Currently, it's mostly a battle between the Intel i7-7700HQ, i7-8550U and i7-8750H (do not buy 7xxxU). There are some similarly named models available, but these are the main three options most manufacturers choose. AMD is not very competitive in the laptop market right now unless you don't need a full dedicated GPU (which you do). Models with a U suffix are 15W TDP parts and will reduce clock frequency heavily with sustained workloads, particularly when multiple cores are stressed. H/HQ (or similar) parts are 45W and will be able to sustain high frequencies indefinitely as long as the cooling is adequate. There are also some models out there with desktop CPUs in it (either K or no suffix), but I would advise against those due to the "jet engine" phenomenon mentioned above. The 7700HQ and 8550U have 4 CPU cores, while the 8750H has 6. How much that matters depends on whether the software can utilize those cores efficiently. Clock frequencies on the other hand are one of the main indicators for general performance, but they can vary at runtime as mentioned above. Generally, 8xxx parts have higher clock frequencies than their 7xxx counterparts, thus the 8750H will be faster than the 7700HQ in basically any scenario, but depending on availability of specific laptop models the 7700HQ can still be a decent buy. The 8550U (or 8650U) may clock similarly or very slightly higher than the 7700HQ in applications only utilizing a single CPU core even though it is a 15W part, but it will downclock massively on sustained loads on more cores. For example, the 7700HQ will go from 3.8GHz if a single core is stressed down to 3.4GHz if all cores are stressed, while the 8550U will go something like 3.9/3.2/2.3GHz for 1/2/4 core stress (again depending on TDP config as mentioned above). In short: If you want the best performance, get the i7-8750H if you can or the 7700HQ if you can't find a good laptop with the other. The 8550U can be a nice alternative if you're concerned about power consumption (fan noise, hours on battery), but be aware that the performance will be reduced heavily when stressed on multiple cores. RAM I would advise against buying anything with less than 16GB if you're a power user. Once your RAM is full the system will slow down to a crawl. The more programs you expect to run at the same time (even if they're currently idle), the more RAM you will need. Software is getting increasingly memory-hungry these days (especially browsers), so even if 8GB seems a lot, it can get a bit cramped if you do a lot of multi-tasking. On the other hand, RAM is extremely expensive right now, so splurging on 32GB is usually not needed unless you absolutely 100% know you need that much. On my desktop PC I regularly go over 8GB used, but I only get to scratch at the 16GB limit when I do some very specific tasks like video encoding or running some games that use up to 8GB on their own. One more useful thing to know is that the operating system will cache recently used files in RAM so they don't need to be fetched from the hard disk or SSD if you need them again. This means that even if your programs only use 10GB of the 16GB total, the additional space isn't just completely wasted. Thus, a little headroom is never bad. In short: Get 16GB. GPU CAD software is usually not as heavy on the GPU as games are unless you are working with extremely detailed models, but a dedicated GPU is still a must. The GPU will mostly be used to render the current view, but can also occasionally assist the CPU in some specific tasks depending on software support. In general, GPUs are a power hog and putting a high-end beast in your laptop is not a good idea (see cooling). Again, AMD is sadly not very competitive in the GPU market so I will only list Nvidia parts. The GTX 1060 is arguably the most powerful option that is still reasonably coolable in a laptop, but I would personally advise to get a 1050 or 1050 Ti instead. The performance should be enough for your use case. The MX150 is a step below and while not abolutely terrible, it will most likely be limited by its 2GB VRAM and low memory bandwidth. In short: Get either GTX 1050 or 1050 Ti. The Ti can be around 20% to 40% faster. Display You will want to have an IPS display. TN based displays are cheaper and specifically used for gaming laptops even at the high end as they have faster response times, but the image quality is generally worse and you have to be looking dead-on to see everything correctly, while IPS displays can still be viewed from an angle. I have no personal experience with 4k screens, but I would not buy anything below 1920x1080 unless you're on a small form factor (13" or under). Color accuracy can vary greatly by model and even every individual screen (i.e. if you buy the same thing twice it won't look 100% the same). Another smaller thing to be aware of is maximum screen brightness, since that can limit your ability to work outside or with sunlight coming into a room. SSD SSDs are probably the single most impactful improvement to general productivity in the last 20+ years. They are vastly faster than HDDs, as they have more than 10x the bandwidth and 1000x less latency. I would not get less than 512GB so that you can put a lot of your regularly used programs and data on it in addition to the operating system and not have to worry about it ever (my 256GB drive is always full and I regularly have to choose and move things around). Larger data that is not regularly needed can be put on an additional hard disk (I don't know how much space you need). PCIe SSDs are faster than SATA SSDs, but it's not that important. The most important is having any SSD at all and having enough space on it for the stuff you use regularly. In general I would not worry about most specs or brand. Yes, there are higher performing SSDs than others and MLC generally is more durable than TLC, but I would worry about other things first. E.g. regarding durability, any modern SSD will be better than a HDD. If you really want a deep dive on SSDs I can give it to you, but I don't think that is necessary. Other Read reviews. Lots of them. It's a real pain in the ass to buy laptops since there are many variables that can't be known from the specs alone (especially cooling, screen quality, battery life). Also pay attention to details like touchpad position and keyboard layout (e.g. do you need the numpad or non-squished arrow keys?) and also number and type of external connections (USB-A/C, HDMI vs DisplayPort, LAN, ...) if you have particular preferences or requirements. Some laptops allow you to replace the battery, SSD, HDD or RAM without opening up the entire case, which can be nice if you want to keep the system for a longer amount of time. I took way too long writing this. Sorry for the wall of text, hope this helps.
  13. Dghelneshi

    I will continue to be amazed by people who can kill anything with 10fps. My aim turns to shit when I go below 60fps.
  14. Dghelneshi

  15. Dghelneshi

    Was playing around with a graphics debugger. Nothing amazing, but I thought this was kinda cool to see.
×