c – Going in a direction, relative to the keys pressed and horizontal camera angle?

if you’re confused by some parts here, im just treating booleans as integers, 0 being false and 1 being true, but im wondering if theres a way to get rid of (X == 1 && Z == -1)*(float)M_PI, because for some reason without it everything else except for S and D at the same time would go the right direction, and that one’s to correct for that case only, but in general, i consider adding manual correctional statements instead of eliminating the root of the problem bad practive? how can i eliminate the root of the S and D going front and to the left instead of back and to the right diagonally, without needing a correctional statement?

const signed char Z = WKeyIsPressed-SKeyIsPressed, X = DKeyIsPressed-AKeyIsPressed;
if (Z || X) {
    const float Direction = (
           (HorizontalViewAngleRadians-(Z-1)*M_PI/2)*(Z != 0) // Calculate relative forward/backward movement
           (HorizontalViewAngleRadians-X*M_PI/2)*(X != 0) // Calculate relative left/right movement
       )/((Z&&X)+1) // Average the left/right and forward/backwards directions
       (X == 1 && Z == -1)*(float)M_PI; // Correct pressing S and D taking you the exact opposite direction it should
    XLocation -= sinf(Direction);
    ZLocation += cosf(Direction);

Nikon Camera: Installing previous firmware version

My Nikon Z6 has been away for major repairs, including a new PCB.
It is apparently coming back with a new firmware update (3.12) installed.

Two questions:

  1. My saved settings for the camera (NCSET002.BIN) were made in the previous firmware (3.11). Can I still load this file into the camera which now has the new firmware?
  2. If not, can re-install firmware 3.11 to replace 3.12?

equipment recommendation – What makes a good film camera?

Unlike a digital frame, a film frame costs money and resources and cannot be instantly reviewed. In the end, you want the camera that you can handle most reliably without needing to double check results, wasting the least frames. Reconsider using any feature great at “perfectly nailing or perfectly ruining the picture” (spot metering, unless you are very secure in its usage, comes to mind).

Some automation features (autofocus, matrix metering, TTL flash) that some would consider optional in a digital environment can help you waste less frames.

Features (like fully-automatic, subject-specific modes, “chip card” systems) that were aimed at snapshooters and minimizing required skill at the cost of available control will not likely be interesting for you, and could actually create wasted frames if accidentally activated.

Looking into how viewfinder coverage plays into the film workflow you want will potentially help your composition – you might want 100% coverage in a film SLR if you are scanning film strips straight, 95%-ish if you are projecting framed slides, and whatever works best with the printing workflow you use if printing (or ordering prints) from negatives.

Precision (lens mount, focusing screen and film gate alignment, shutter and meter accuracy, autofocus accuracy if using autofocus) and reliability in the camera build certainly will help. Otherwise, the camera body does not matter that much for image quality (excepting some rare innovations like the vacuum-assisted pressure plate in some Contax RTS models) – it is usability and ultimately style you are looking for.

Mind that a camera designed for informed-manual operation (eg a Minolta SRT-303) will be optimized for that handling mode … and with some practice, MUCH quicker to handle than eg the manual modes on an autofocus-oriented SLR.

Google pay scanning credit card without camera permission

I have Google Pay installed on my phone. I have denied camera permission for every single app (except for “Settings” app which I am unable to deny Camera permission) on my phone.

When I try to add payment method on Google Pay app, Google Pay app is able to use my phone camera to scan credit card without camera permission. How is this possible?

equipment damage – Is it safe to test a (possibly) salt-water damaged lens (Tokina 11-16mm) on a new camera body?

My experience with saltwater damage is from my family business in an electronics repair shop where we handled board-level repairs for major manufacturers (including Sony & Panasonic.) The consensus always was from us, the manufacturers, and independent insurers that once we confirm a device has had saltwater in it then it is immediately “beyond repair”.

There are a few reasons… as a repairer you simply cannot guarantee that the device will work once it’s had saltwater in it. The way salt affects corrosion means that if a device passes testing in the morning you does not guarantee that it still might in the afternoon. Repairers simply won’t take the risk when the device might be back in their hands the vey next day.

Typically though you can wash it off, the true saltwater damage is rarely visible to the naked eye. Circuits are very fine so any corrosion issues don’t need to be especially large (or even visible to the naked eye) to cause either a broken or short circuit may occur and there’s no way for a repairer to spot it.

When you look at the potential damage that might come from the failure-mode of the lens it is the kind of damage that could take out your replacement body. If you can afford the risk that you have a ticking time-bomb on your hands that means you may have to replace the body (again) and the lens the very next time you use them (or it may be fine for years) then by all means go for it, but personally I’d chalk it up to experience and replace it now.

adobe camera raw – ACR: Quick Color Preview While Using “B&W Mixer” tool for Black and White Photo?

In Adobe Camera Raw, when using a monochrome color profile, we get the B&W Mixer tool:
Photo of B&W Mixer tool in Adobe Camera Raw

When using this tool, I wish I could quickly enter a keyboard shortcut and see a quick color preview of the image.

Is there a quick and easy way to see a color preview of an image with a monochrome color profile in Adobe Camera Raw, without changing the color profile?


Lightroom B&W Mix: how to see where the original colors are? – this post is about seeing where certain colors are in Lightroom, which is similar, but not the same as my question. I’m interested in seeing the entire image in color briefly, not seeing a mask of a selected color.

What is the meaning of the small blinking camera symbol in my Canon 70D viewfinder?

This is the electronic level indicator. It indicates that you’re not holding the camera parallel to the ground but instead have tilted it. The specific configuration indicates that you’ve got a tilt of greater than 2°.

From page 66 of the manual:

enter image description here

Note that this is configurable — you can turn it off if you don’t like it. It’s also available on the rear LCD during Live View shooting (where it’s maybe a little more obvious as a level).

Also note the manual’s warning of a 1° margin of error (or even greater when the camera is far from level).

unity – How to tell which face of a cube is most visible to the camera?

public enum CubeFace {

public static GetFaceToward(Transform cube, Vector3 observerPosition) {
    var toObserver = cube.InverseTransformPoint(observerPosition);

    var absolute = new Vector3(

    if (absolute.x >= absolute.y) {
        if (absolute.x >= absolute.z) {
            return toObserver.x > 0 ? CubeFace.Right : CubeFace.Left;
        } else {
            return toObserver.z > 0 ? CubeFace.Front : CubeFace.Back;
    } else if (absolute.y >= absolute.z) {
        return toObserver.y > 0 ? CubeFace.Top : CubeFace.Bottom;
    } else {
        return toObserver.z > 0 ? CubeFace.Front : CubeFace.Back;

(Unity) Spawning AI cars – weighted to ahead of camera?

I’m working on a little project where I drive around a small city with a top-down but slightly angled camera view (like GTA Chinatown Wars). Cars are instantiated from spawners that aren’t in camera view, then destroy if they drive too far from the player.

To spawn a new car, I loop through all my spawner gameobjects and if they are within a certain distance to the player (and not in view of the camera), then they get added to a ‘spawner’ list, of which I pick a random.

The loop is something like this;

float dist = Vector3.Distance(player.transform.position, spawner.transform.position);
Vector3 screenPos = Camera.main.WorldToViewportPoint(spawner.transform.position);
bool inView = screenPos.z > 0 && screenPos.x > 0 && screenPos.x < 1 && screenPos.y > 0 && screenPos.y < 1;
if (!inView && dist < 15) { list.Add(spawner); }

This works, but I find that when I’m driving around barely any traffic spawns on roads ahead of me, maybe because the camera angle is removing a chunk of the possibility area.

Is there anyway to ‘weight’ it so spawners in the direction the camera (or beyond) have more chance of being picked, rather than ones behind me? In games like GTA Chinatown Wars you will be driving through rows of traffic, and I’m trying to get more density.

smartphone – How to select a cell phone (mobile phone) that will have the best camera hardware and software?

Shortly before the COVID-19 pandemic began, I had the opportunity to attend a few art gallery openings that featured photography.

What surprised me was that some of the photographs were taken using cell phones (aka mobile phones, smartphones, and cameraphones). What surprised me even more was that some of these photos were enlarged to over 2m wide, and still looked good.

My first quality camera was medium format (followed by large format), so this was a real eye-opening experience for me.

As all photographers know, the foremost challenge to taking a good photograph is actually having a camera with you when you see an opportunity.

Cell phones have given us an easy-to-carry and portable solution to almost always have a camera (and even a short-range flash!) with us. But finding a cell phone with quality camera hardware and software can be challenging. Four issues make this especially challenging:

  1. Cell phone models are constantly being introduced, making previous comparative reviews less valuable.
  2. Cell phone brands and model availability are not consistent around the world. This is partly because different technologies and frequencies are used in different regions.
  3. Cell phone prices vary considerably, and different people have different budgets. Phone XYZ might technically offer the best combination of hardware and software, but it might be twice the price of a device that is 99% as good.
  4. The cameras of many cell phones get great reviews because they generate reasonable quality images if you never enlarge your photographs. But once you enlarge them to sizes appropriate for hanging in a gallery, quality often (but definitely not always) degrades to unacceptable levels.

Taking the above into consideration, how does a photographer select a cell phone that will have the best camera hardware and software that will meet their desires (those desires, of course, tempered by an understanding of the current limits of technology, manufacturing, and form factor)?