blog.sandm.cc

Reader

Read the latest posts from blog.sandm.cc.

from TILT

To be conculted

Foreshadow

Resistance to authority can manifest in many ways. I have a friend, for example, who has the need for speed and insists that the speed limit is merely a suggestion. He's angry when he inevitably gets pulled over for speeding and is mean-mouthed with the police officer about it. This, of course, only gets him in deeper trouble.

My own resistance to authority manifests much differently. I seem to be constitutionally incapable of taking good advice or learning from the mistakes of others. I listen to the good advice and observe others making their mistakes, but have a streak of stubborn hubris that deludes me into thinking I can do better. “It won't happen that way for me,” are my famous last words. It always happens that way for me too because, well, it happens that way for everyone (duh).

Karma

To be concultedUntil I got big enough to work my own chainsaw, my job was loader. I was to keep the cut firewood out from under Dad's feet and turn big logs over with the cant hook, so he didn't have to saw dirt to get all the way through. The only thing that will dull your chain faster than dirt is a rock and I kept those out of his way as well. I chucked the cut pieces of wood in the back of the truck and then climbed in to stack it neatly. He wanted me to pick it up and carry it, walk with it. Place it gently on the tailgate. Please. I don't know how many thousands of times he said “You shouldn't throw the wood in the bed of the truck like that, you'll break the window.”

Smug in my finely honed sidekick skills, I'd roll my eyes at him and toss the wood anyway.


To be concultedDad and I had put far too much effort into that stack of firewood for me to leave it behind at the house I was moving out of. The only time I could go out to Parks and get it was after my workday was done. I was working furiously against the approaching night, throwing wood into the bed of the truck as fast as I could. I didn't look up more than about one piece in ten to see where or how it landed. The spirit of my recently deceased father settled on my shoulder and said, You should stop for a minute and get up there and stack your load. You're going to break that window. I paused long enough to brush him off my shoulder, gently, like a moth, and bent down to lob the next piece. I glanced up to see it bounce off of another piece of wood in the bed of the truck and catapult squarely through the back window of the truck. It hit the window end on and smack in the middle.

A catapult, as you know, magnifies energy. I doubt I could have thrown a piece of wood that big hard enough to make that distance at that height. I couldn't have hit the window any more squarely if I'd been aiming for it. I learned in that very same moment just how small and numerous smithereens are. If you, say, hit a softball that accidentally goes through someone's living room window, the glass breaks, sure, but it breaks into big pieces. Pieces you can pick up. But this truck window, oh. Who knew one piece of glass could shatter into so many tiny pieces? No one smithereen was bigger than a grain of rice.

To be concultedIt was very dark and very cold before I had swept as many smithereens out of the truck as I could with a flashlight, whisk broom, and dustpan. Not wanting to leave broken glass in the yard for the sake of the dogs and everybody else, I was careful to get all the broken glass I could in a garbage bag and left the rest in the cab. I drove home with late October's icy fingers stroking the back of my neck through the gaping hole behind my head, and with glass shards poking my butt. And with less than half of my wood pile.

The spirit of my father, dead these many months, settled back on my shoulder and we rode on together to Williams in companionable silence. I was raised by a kind man. He would never be so mean as to laugh at me about it or tell me I told you so. But he didn't need to, I could hear his eye roll clearly from the other side of the veil between this world and the next.

To be conculted


moonlit press logo, crescent moon with a star below

Expensive Tuition is an excerpt from Terryl’s forthcoming collection Saturday Morning Cartoons, a collage of painless vignettes with a moral to the story. Terryl had every opportunity to learn this lesson the easy way, but she was having none of it.

Look for us on Mastodon, a free, open-source, distributed, independent chat service where there are no big corporations (or their agendas) between us.

Follow Terryl's work and give her feedback on:

Mastodon https://mastodon.sdf.org/@wordsbyterryl
email mailto:moonlitpress@proton.me


Gratitude list:

Graphic design by AJ Brown https://mastodon.sdf.org/@mral

Some images are through Creative Commons License and we would thank all of those creators if we could find their names.

Terryl is grateful to, and for, her wonderful father. He was a smart, gentle, and loving parent, the likes of which few are lucky enough to get. She never fully appreciated him until he was gone.

Terryl is also grateful to Al, for the excellence of his work. She has always been particularly enchanted with the Stonehenge picture featured in the last post.

Terryl and Al are both deeply thankful to the people who read our work. There would be little point in any of this without you You make it worth doing. We love hearing back from you, and are ever so grateful to you for sharing our efforts with your friends and family.

 
Read more...

from TILT

Samhain – A November Eve table blessing

The word hallow means to sanctify, to make holy. Halloween (Samhain, pronounced sow-en, for pagan folk) in America is a caricature of something that might be, perhaps once was, much more meaningful: a night to honor the dead in recognition of their significance to the living, to celebrate their contribution to immortality.

Everything has a shadow. Night is the shadow of day. Winter is the shadow of summer. Sickness is the shadow of health. Old age is the shadow of youth. Last year is a shadow of this year, and death is the shadow of life. A world without shadows would seem flat and stagnant, one-dimensional. Indeed, if it were not for the shadows we might not much appreciate the light at all−it is the contrast that illuminates. Our world grows deep with shadows now; another cycle is completing its course. The days are shortening and the nights are filling with whispers. It is the shadow of death which offers us the insight to comprehend the continuum of life; it is what empowers us to understand our own place in the eternal procession of the ages. The living and the dead are linked together in one unbroken chain−we feast our dead tonight to honor that connection and keep it intact. Samhain exposes a crease in time; it is a fissure between summer and winter, between the old year and the new, between this world and the next. We bid the God farewell until Solstice and wish Him well on his sojourn to the Other Side. Our sorrow at His passing is balanced by the sustenance and comfort the Goddess provides. We join Her in joyful anticipation of His return. As it wanes, now is the time to take the years' lessons to heart and to face our inner world alone. The coming winter season brings a turn inward. We descend to the underworld to confront our fears and to hallow our wisdom. The Goddess feeds our intuition and, waning, deepens our secrecy. Let us give in to our true passions, develop our instinctive natures, and explore the mysteries that call to us. Pray honor your complexity and your value. Trust your heart. Let us feast, then, on the fruits of the harvest to support our bodies and deepen our connection to the Goddess. We do so in joyful gratitude for the abundance of love and kinship around this table tonight, understanding that contemplation of death is neither morbid nor scary. Tonight we celebrate the blessing and liberation in the lesson that the greatest gift of the shadow of death is the challenge to live with full consciousness and conscience. To those who have traveled this way before, we toast our thanks. Merry Meet And Merry Part, Until We Meet Again.


moonlit press logo, crescent moon with a star below

MoonLit sends you heartfelt Samhain greetings at this October Full Moon. The sun descends into dark during the coming turn and pulls all of us along with it. It is a time for introspection, and a time to remember and honor the dead. It’s also time to dress up and have fun. Happy Halloween to one and all.

Follow Terryl's work and give her feedback on:

Mastodon https://mastodon.sdf.org/@wordsbyterryl
email mailto:moonlitpress@proton.me


Gratitude list:

Graphic design by AJ Brown https://mastodon.sdf.org/@mral
Photography by Terryl Warnock https://mastodon.sdf.org/@wordsbyterryl

Some images are through Creative Commons License and we would thank all of those creators if we could find their names.

On Shadows was previously published in The Miracle du jour and is reposted here with the permission of MoonLit Press.

On Shadows was inspired by, and is dedicated to, Kari Ann Allrich, Goddess of the Hearth.

Terryl is grateful to the people who gifted her with this beautiful lifetime: her parents, and their parents, and their parents, and so on and so forth, back into the dimness of time immemorial. Samhain celebrates the kinship of human connection so ancient it transcends both human ken and human memory. It is the natural way of things for a community of the beloved on the other side to grow with the years as a human being ages. Halloween offers an opportunity to tell them we miss them and love them still.

Terryl is also grateful to be the batty old witch of her family at last. It took three generations to earn the title, The Bat, and it’s one Terryl wears with pride.

Al is grateful to his little brother Lloyd, he was a good example to us all. He lived a life of service to others and was dedicated to his wife, family, and community. He died way too young.

Terryl and Al are both deeply thankful to the people who read our work. There would be little point in any of this without you. You make it worth doing. We love hearing back from you, and are ever so grateful to you for sharing our efforts with your friends and family.

 
Read more...

from TILT

fireRecap: Our storyteller has shared her four most crazymaking encounters (Reports from Hell) with bureaucracy in Parts 1 and 2 of this series. In Part 1 she shared how a summer job with the Federal government turned her into a thief, and how in order to survive a stint with the State government she became a liar. In Part 2 of this series, she wrote of the bureaucracies she has encountered later in life, how the Hysterical Commission turned her into a cheat, and how the Fire District has left her cynical.

This is the third and last installment in this series. Her takeaway. MoonLit has shared the backstory as context so that you may draw your own conclusions.

Conclusion: The Bureaucrazies

“I've been known to walk through the fires of hell over the principle of the thing,” I tell the assemblage around the table. We have gathered at the fire station to sign the employment contract with the offensive language mandated by State law.

pushing rock up hillBlank faces around the table greet my righteous ire about the principle of this thing. They maintain a polite silence, and blink. The point I'm trying to make about the slippery slope we're on—the one where government has the right to tell us where we can and cannot spend our money — whiffs. It doesn't so much as stir a breeze. I'm the only indignant one in the room, and that old familiar sinking feeling in the pit of my stomach tells me that I have poured my ethical passion out like water on the sand, yet again.

I sigh and sign, feeling that flame of insufferable do-gooderism in me that has burned so hot and so bright for so long, flicker and die at last. It feels good. I hope it doesn't ever flare up and engulf me again. I'm old now, and exhausted.

I've fought my desperate battles against incredible odds and lost. Over and over again. What was that definition of insanity again? A brighter woman would have chosen her battles with greater care. A more sober woman would have found the serenity to accept the things she could not change.

The Religion of My Fathers:

Mythology states a venerated ideal. Like ritual, mythology seeks to manifest the sacred ideal in this, the profane world. It is always an imperfect transition. The real (profane) world never fails to compromise the mythological ideal.

statue of libertyAmerica as the land of the free and the home of the brave is a myth. It is a myth I was raised on. It was a myth I loved and lived by. My parents adamantly believed in this myth, and raised me to adopt it as my own. It is the myth that assured me our country, and thus our democratic institutions, had the integrity to do the right thing. America was fair and ethical, the brightest light in a dark world.

But the attempted manifestation of the mythical ideal in this messy, real, chaotic world always falls short. There is a significant disconnect, for example, between the mythical Bring me your tired, your poor, your huddled masses and the brutality of our militarized border today. We cling to the mythical ideal as the best expression of our nobler selves so our heads don't explode from the cognitive dissonance of the reality.


There are elements of civilization too big and too universal to be undertaken by individuals or private enterprises. Eternal, existential matters that concern every citizen: governance, education, national security, and health care, are a few for instances. Bureaucracies have grown up in and around these too-big elements of civilization, to administer such important and universal concerns. American mythology assures us that the bureaucracies exist and are managed to benefit all of us equally because of the democratic ideals and freedom America was founded on.

I watch the news and scratch my head. The disconnect between the nobility of the myth and the reality of the manifestation is glaring. How did it all get so screwed up? I share these thoughts with you here in case you bought into the myth so completely that it confuses reality for you too.

3d mazeThe reality is that democracy is messy. It is an ideological struggle between extremes which, when it is healthy and working, pulls those extremes to compromise somewhere in the middle. Nobody gets all they want all the time. When some get all they want and others get nothing they want it's autocracy.

American institutions seem to be working to undermine their reasons for existing.

Our government puts aside careful governance, ostensibly undertaken to protect the citizens and spend their tax money wisely, in favor of trying to legislate the morality of individual citizens.

cart before the horseThe educational system works hard to make sure its students lack the ability to study and think critically despite the herculean efforts of teachers.

And the health care system is doggedly determined to see people denied health care.

It's no surprise to me that American bureaucracies at all levels are filled with thieves, liars, cheats and cynics. Perhaps they've worked where they do so long that they have become morally anesthetized. Long enough that the absurdities of their bureaucracies have started to make sense to them. The more nefarious among the bureaucrazies put energy into keeping us angry at each other because it liberates them and their bureaucracies from the critical gaze of their constituency. As long as we're arguing amongst ourselves, they're free to rob us blind without consequences.

Culture, and its cultural institutions, are reflections of its people. Our national institutions are mirrors in which we see our best and worst selves reflected.

Democracy is a blanket we all—in all of our spectacular, beautiful plurality—huddle under for safety and comfort. We are of different religions and races and orientations and genders and languages, but we are all Americans and that makes us family.

REGISTER, AND VOTE!:

The deadline to register to vote in the upcoming election is drawing near in most states. MoonLit is not trying to sway your vote. You should vote your own conscience and your own best interests. But by all means, register and VOTE! A healthy democracy requires the participation of its citizens.

bumper stocker - engage with your community

If you have been registered to vote in the past, check with your county elections department to make sure you are still registered. Some counties have been purging their lists of voters.

todo list

bumper sticker - your vote does matter

bumper sticker - step up your democracy needs you

your vote counts

quote by will smith

all hands image


moonlit press logo, crescent moon with a star below

MoonLit offers the third and last installment of our look at bureaucracies at this October full moon. These are the conclusions we have drawn from the four reports from hell previously offered, but you will most certainly have your own take on these events. The series asks us all not to lose our sense of humor as we navigate the minefield that American bureaucracies often represent. We would love to hear your thoughts on all of it as our country gears up for the upcoming exercise of American Civil Religion—an election.

It is the inalienable right—and responsibility—of all American citizens to vote. Democracy only works if we—each and every one of us—participate. The most basic and most important form democratic participation can take is voting. Get registered and exercise this right. Don’t let anyone convince you that your vote doesn’t matter, that it doesn’t count.

Follow Terryl's work and give her feedback on:

Mastodon https://mastodon.sdf.org/@wordsbyterryl
email mailto:moonlitpress@proton.me


Gratitude list:

Graphic design by AJ Brown https://mastodon.sdf.org/@mral
Photography by AJ Brown https://mastodon.sdf.org/@mral

Some images are through Creative Commons License and we would thank all of those creators if we could find their names.

To the Life in Pieces writing circle for reading an early draft of this.

Terryl is (grudgingly) grateful to the bureaucracies and bureaucrazies she has encountered for this series of essays. She would like to point out to the cosmos at large that after a lifetime of swimming upstream now she feels she is paid up, and state for the record that any bureaucracies trolling for a sucker to help out should kindly look elsewhere.

Terryl is grateful to her in-law David Dyck for the concluding line of this essay. She stole it from him at a wedding reception a couple of years ago.

Terryl and Al are both deeply thankful to the people who read our work. There would be little point in any of this without you You make it worth doing. We love hearing back from you, and are ever so grateful to you for sharing our efforts with your friends and family.

 
Read more...

from TILT


fire Recap: Last time, our storyteller shared her youthful encounters with bureaucracies. She wrote of the Forest Circus, where she'd been ordered to slaughter thousands of innocent seedlings. The experience compromised her ethically and rendered her an insubordinate thief.

She relapsed ten years later by taking a job with the Motor Vehicles Division. There, she was required to send handicapped drivers to the doctor to be recertified as 'still permanently disabled' in order to renew their wheelchair license plates. She left public service compromised, an insubordinate liar.

We rejoin our story in progress.

Report #3: Hysterical Contagion

paint I thought when I bought the auto parts shop that, since I was working for myself I would be in charge. My signature was all by itself on a breathtakingly huge loan and I thought that purchased me the right to self-determination. Seems like it should have. I told myself I was empowered and didn't have to let bureaucracy compromise my integrity ever again. I was in my early 40s and purchased the business to bail my mom out of it after my dad passed away suddenly and unexpectedly. The shop was housed in an ancient, wheezing building centrally located in a small town on Route 66. I had an enormous mortgage on a piece of history, my dingy old dog-eared auto parts shop was on the register of historical buildings.

burning moneyA few years into my auto parts career, I was changing vendors, and needed to repaint my building exterior from gray and gold NAPA team colors, to team CarQuest colors, which were red, white, and blue. This transition was taking place, coincidentally, not long after the 9/11 tragedy. All of America was painting itself red, white, and blue. The Historical (Hysterical) Commission responsible for overseeing the integrity of the appearance of the Hysterical District, insisted I commission an architect's rendering of the building's new look (at a cost of thousands of dollars and weeks in delay), in order to obtain its permission for my red, white, and blue paint.

The lady who ran the Chamber of Commerce was also the chair of the Hysterical Commission. She was a fine artist, a painter, in her spare time. She was the one who delivered the Hysterical Commission's bad news to me about the architectural rendering. “Are you kidding me!!?” I ranted, “It's a greasy old auto parts shop, Donna! Sheesh, it could hardly get an uglier!”

But in the end I had to surrender, the authority of the Hysterical District overlaid my rights to independence as property owner. I buckled and hired the architect. The Hysterical Commission liked the architect's picture and gave its blessings to my paint job at last.

Unfortunately, the colors the architect proposed, and the only ones the Commission would allow me to use, were proprietary mixes available only at a certain paint store in Phoenix (I suspected collusion). That certain paint store informed me that the paint would have to be special ordered. It was going to take weeks to get, and someone was going to have to drive to Phoenix (150 miles away) to pick up the Blush Ecru, Batik Blue, Domino Black, and Lipstick Red paint.

I blew a gasket and went to the Chamber of Commerce office to bitch about it. Donna wrinkled her little fine art nose at me and said “Well, but, T, you know, some whites are so glaring and cold.”

witch on broomstickI managed not to roll my eyes but thought Oh, this poor, fragile thing. I flew the short distance between the Chamber of Commerce and my shop on my broomstick. In flames.

We were already weeks behind with the changeover project owing to the Hysterical Commission/paint fluster cluck. I was about to snap under the pressure.

I paced and fumed and raged and cussed for a while to try and get my blood pressure back down.

“Okay.” I said, taking David aside for a private conversation. “We are SO done screwing around with this. Like effing paint is the most important thing we've got on our plate right now. I have yet to find the Champion plugs, and our customers are starting to cry about the good old NAPA days. It just won't do.

“Go to the hardware store.” I told him. “You have a half an hour till they close, Get the coldest, most eye-blistering white they have, vampire blood red, and the bluest of royal blues. awardOff the shelf colors, David, I want this job finished by Monday.”

“Yes Ma'am,” he grinned.

By Monday it was done. We got a lot of compliments from our neighbors on our bright new look, including one from the Chamber of Commerce lady, end of 3Donna, who found it refreshing and clean and said “See, it was worth the extra effort, wasn't it?” The Chamber of Commerce even gave us an award for our new spruced-up exterior. And there I was, a newly-minted insubordinate cheat, my right to self-determination tatters in the wind.


Report #4: The Blind Leading the Sighted

fire truck By my early 60s I had sold the auto parts shop. My feet and back were ruined and I could no longer run fast enough to escape the trouble that pursued me down the street in my own little neighborhood. I was out for a hobble around the block with my walking sticks when a neighbor ran me off the road into the bar ditch with his bright yellow Jeep. Literally. He held me hostage there. He wouldn't help me out of the ditch or move his Jeep until I caved and agreed to take a position on the fire district board. It would only be temporary, he promised. He only needed someone to sign checks, he said. I wouldn't even have to attend meetings, ever, he vowed. Although we didn't have one handy, he is a Christian man, the kind who are always up in your face about it, and I made him swear on a virtual Bible.

gumball hydrantAs soon as I was duly sworn in and my signature was officially on the fire district's checking account, he quit and dumped the whole mess on my head. It was the sleaziest thing that's happened to me since I quit drinking.

I had managed to happily avoid bureaucracies for almost 20 years and now find myself running a tiny little government—just 94 acres of 'nobody else gives a shit.'

The fire district job situates me, who doesn't know squat about managing a fire department, (nominally) in charge of managing a fire department. I'm now supposed to supervise people who have lifetimes of professional experience with it. This is bureaucratic intelligence at its finest.

When I complain about the illogic of this to one or more of the several fire chiefs I work with now, I ask them to recognize that none of us on the board (me least of all) has enough information to supervise any of them. They are polite and deferential as they explain to me that this remove is institutionally intentional. My board and I are theoretically the degree of separation between the county, big meetingwhich collects the taxes, and the fire department, which spends it. It is thought that this degree of separation puts board members like me in a position to be careful with taxpayer money.

Sigh. Yet another room full of policy makers somewhere in the draconian bowels of the fire district world who clearly haven't thought it through. If anything, I'm in greater danger than anyone else of wasting taxpayer's money because I don't have the first, teensy, tiny little clue how the money would be best spent.

I was recently required to write into an employment agreement that the independent contractor my little government was hiring would agree not spend her taxpayer funded wages at any business boycotting Israel.

contract“Who is going to enforce this?” I fumed at my attorney, who is counsel for the County. “I promise you it's not going to be me. Do you have a list of approved businesses? Does my new hundred-dollar-a-month secretary have to submit receipts for approval? The district will be in violation of this contract from the outset, right? I'm extremely reluctant to sign this.”

“Oh,” the County Attorney says, “It's just one of those quirky little things. You know, a feel-good thing. Nobody expects it to be enforced.”

“Well why write it as a law then? If it's just a 'feel good thing' let's send her a greeting card. I'm taking this quirky little unenforceable feel good clause out of the employment contract. It doesn't make me feel good in the least.”

“No, you can't do that. State law demands that clause be in all contracts with all levels of government.”

“I thought you told me the law requires the board to take care of the taxpayer's money! This is a Catch 22. You're requiring us to sign something regarding expenditure of taxpayer money we know to be unenforceable. Is someone at the state level going to vet every business where our secretary might spend her money? What if the only grocery store in town is on the verboten list? Is the state going to pay her extra to drive to another town to go to an approved grocery store? Our tiny little district doesn't have any extra money to pay for travel. This is Big Brother stuff and it's terrifying! How can you be so casual about it?”

“Nothing will come of it,” the County Attorney says, “and I will defend you if anything does.”

Small comfort.

I butted heads with my attorney for a few more rounds, but I'm old and soft-headed now, while she has youth and legal certainty on her side. We soon discovered that she had the harder head.

My purpose here is not to throw stones at any of the excellent people who work in and around fire departments, but rather to point out the fundamental flaw in the basic bureaucratic structure of fire districts. The structure that elevates me, yet again, to a level of incompetency. The structure that places the cart in front of the horse. You can just call me Peter (principal).

end of 4So I try my very best to be a good sheep now with this 'volunteer' position. I go placidly where I'm led and sign where I'm told to sign, a newly-minted insubordinate cynic.

To be conculted


moonlit press logo, crescent moon with a star below

MoonLit offers this second installment of three in a series that takes a gander at bureaucracies and how they function—or dysfunction as the case may be. Be not afraid, this series is only political in a tangential sort of way. The series hopes we can retain our sense of humor as we navigate the minefield that American bureaucracies often represent.

Follow Terryl's work and give her feedback on:

Mastodon https://mastodon.sdf.org/@wordsbyterryl
email mailto:moonlitpress@proton.me


Gratitude list:

Graphic design by AJ Brown https://mastodon.sdf.org/@mral
Photography by AJ Brown https://mastodon.sdf.org/@mral

Some images are through Creative Commons License and we would thank all of those creators if we could find their names.

To the Life in Pieces writing circle for reading an early draft of this.

Terryl is extremely grateful to Chief Trotter and everyone at High Country Fire and Rescue, for their valuable assistance in navigating the administration of a small fire district. Thank you for your many kindnesses great and small, and your clear-eyed understanding of the work you do. You're worth your weight in gold, each and every one.

Terryl and Al are both deeply thankful for the people who read our work. You are what make it worthwhile. We love hearing back from you, and are ever so grateful to you for sharing our efforts with your friends and family.

 
Read more...

from TILT

article goes here then colophon


moonlit press logo, crescent moon with a star belowWe have learned from our Hopi neighbors that the mind and spirit are most open to growth when there is a smile upon the face. In keeping with that wisdom MoonLit offers this as the first of three installments in a series that take a gander at bureaucracies and how they function—or dysfunction—as the case may be.

Follow Terryl's work and give her feedback on:

Mastodon https://mastodon.sdf.org/@wordsbyterryl
email mailto:moonlitpress@proton.me


Gratitudes:

Graphic design by AJ Brown https://mastodon.sdf.org/@mral
Photography by AJ Brown https://mastodon.sdf.org/@mral

Some images are through Creative Commons License and we would thank all of those creators if we could find their names.

To the Life in Pieces writing circle for reading an early draft of this.

Writing is not easy for our staff writer at MoonLit. She writes with people in the Life in Pieces writing circle from whom beautiful, lyrical, evocative, emotionally potent writing flows like water from a tap. These powerful writers can turn it on and off at will. Terryl admires these writers (and, okay, if she's honest, is a little jealous) and enjoys their work immensely. But for her own part, writing is dreadfully heavy lifting. Terryl is grateful to Al for his computer expertise and his willingness to share it. Without his brilliance and generosity of spirit there would be little point in doing the hard work of writing because nobody would ever read it.

Terryl and Al are both deeply thankful for the people who read our work. You are what make it worthwhile. We love hearing back from you, and are ever so grateful to you for sharing our efforts with your friends and family.

 
Read more...

from senpie

Nothing much for today either. I was again playing with multi-threading and noticed a had a bug. The issue was that several cores were computing the result, however, because I had data races I would get a poor-quality picture. I didn't check the output image, that's why I didn't notice it yesterday. The idea is that even tho each core would do one sample, running on 8 cores would mean I have 8 samples per pixel when averaged. However, because random was shared it wouldn't do 8 samples, but some sequences would be corrupted and I get less than 8 samples. Here the code I finally ended up with:

static std::hash<std::thread::id> hasher;
static std::uniform_real_distribution<double> distribution(0.0, 1.0);

inline double random_double() {
  static thread_local std::mt19937 generator(
    static_cast<unsigned>(hasher(std::this_thread::get_id()))
  );
  return distribution(generator);
}

I have static thread_local, which says that each thread has its own random number generator. Furthermore, its constructor receives the hash of the current thread_id resulting in different seeds for each seed, so sampling on different threads would actually make sense. Nevertheless, there is a case where hash id could repeat and my threads' work would be redundant. Fortunately for my use case since I use very few threads, six on Windows, 8 on Mac (4 efficiency cores, 4 performance cores), and all threads start “at the same” it is little likely that id would repeat. On that note, I think the code I wrote that distributes the tasks to threads still looks kinda of ugly, and I can do better. For that specific purpose, I resumed reading Bjarne's book, specifically the “Threads and Tasks” section, to seek for better alternative. In the meantime, let's enjoy more renders of balls. This time in full HD, with 80 samples per pixel. Why again balls? you may ask. Because I am too lazy to write code for loading meshes and handling a ray-to-triangle intersection, but I will do it eventually, most probably tomorrow. This time the image took 25 minutes to render, which is quite good considering the other render took me 4 hours. Note the previous render was 120x675.

Render of balls, 80 samples per pixel, max depth 50, 1920x1080

 
Read more...

from senpie

I have finally added the multi-threading support. A screenshot showing 100% utilization of my CPU resources: OS X System Monitor/CPU Utilization CPU Utilization on MacBook Pro 13 m1, when rendering in multi-threading mode. There was 5x improvement in speed, which is amazing considering my computer has 6 cores ( tested on windows ). That's it for today, I will share with more insight tomorrow!

 
Read more...

from senpie

I am now on a path of darkness, and no tutorial shall help me. That is, I have finished the tutorial and I am experimenting on my own, therefore there is no one to hold my hand and tell me if I am doing something right, or wrong. Speaking of someone to hold my hand, this post has been sponsored by HedgeTheHog#andranik3949, who was kind enough to help me when I was completely lost debugging my code. Wish I could say the same for the compiler... The issue was that I was trying to use std::bind, to pass to the render function a reference to my world. HedgeTheHog found The arguments to bind are copied or moved, and are never passed by reference unless wrapped in std::ref or std::cref. Therefore, a solution would be to force pass the reference with the use of std::ref, where auto f = std::bind(func, std::ref(world));, then use f();. Another workaround is to use std::placeholders::_1, where auto f = std::bind(func, std::placeholders::_1); the pass the world in function call such as f(world);. There are some other errors I have yet to battle, but I will talk about them after I find a fix. The second challenge I have to face is to somehow use local instances of random generators. “Why?” you may ask. Because, if I have several threads using the same random number generator it's gonna be a bottleneck since random generators usually maintain some type of inner state. Therefore, all of the cpu cache across all of the cores will be invalidated. Someone smart reading this may think “Aha! Just use static thread_local, instead of static”. Unfortunately, that is useless, because I would have the same seed over all instances. I need to figure out a way to have that with different seeds on each thread and without making my code super ugly. That's it for today, see you!

 
Read more...

from senpie

Today, I have spent extra hours to finish up the project. The final result looks super cool. Since I haven't yet added support for multithreading this scene took me around four hours to render. It had 500 samples per pixel, with a max depth of 50 rays. Final rend For the last day, I have added defocus blur.

I am not sure yet, what I would want to add to this project, but I will decide soon. That's it for today, see you tomorrow!

 
Read more...

from senpie

Almost done with the series! Although next step would be to add simple improvements for quality of life. Here is the list of stuff done ( again in reverse chronological order ):

Added camera controls with lookfrom and lookat parameters.
Added glass material.
Added metal material fuzziness property.
Added materials.

Yet again, below is the evolution of the output image after each major change ( in chronological order ) Fuzzy Metal Fuzzy metal.

Glass Attempt Glass Attempt.

FOV experiment FOV experiment

Camera controls Camera controls.

Zoomed in Zoomed in.

That's it for today. Code is as always available in my github page. I have implemented some more stuff, but there is currently a bug, so I will leave it for tomorrow. See you!

 
Read more...

from Unai's 100 Game Dev

Hello there, Unai here with my 1st day of 100 days of Game Developing! First of all, this is my 3rd day xd

My main objective is to work everyday on a game prototype of mine at least 1 hour. Probably some days I'll work on some other game prototypes, or whatever, but I am going to try to stay on focused only on one project at a time.

The game idea is a Tower Defense based in a mountain pass. During the day you manage your base, build new defences and improve your production facilities, and at night you see how they defend them.

BUT THERE IS A TWIST.

You can control almost any character/defense you see in the game.

So well, I said this is my 3rd day, I don't know why but I find it super hard to actually write this down. I'm gonna do a very fast recap of my progress so far:

Day 1: Started the project, I'm gonna be using Unreal. Started with the camera movement of the city mode, my plan is to make first the transition between camera mode and NPC control.

Day 2: Continued with city view controller, almost finishe. I've been following some YT tutorials on it and I'll probably use them a lot in the future. Also started playing a bit with landscape painting. Broke the sky and lightining someway... don't know why.

Day 3: I feel confident enough right now with the camera movement in the city mode, so I did the beggining of the change between NPC view and City View.

As a side note, I have two thoughts: 1. I find it very hard to actually write this things, and also sometimes to do this 1h work. Because I don't count the work I do for other courses, and I'm also doing 30' of writing everyday... hope I can keep up. I think after the first week it should become easier, but I feel like then it is going to be the hardest... Fingers crossed. 2. I really should sit down some day and think about the scope of the game...

 
Leer más...

from senpie-hy

Վերջին փոստս գրելուց հետո հասկացա, թե ինչքան շատ գործ կա անելու խաղերի դիզայնի և խաղերի ծրագրավորման ոլորտը հայաֆիկացնելու համար։ Ոնց եմ ուզում հայաստանում խաղերի արդյունաբերություննը լինի բարձր մակադակի։ Ինչի՞ չենք կարա ասենք Ամերիկայի, Ճապոնիայի, Շվեդիայի կամ Լեհաստանի մակարդակի խաղեր սարքենք։ Չեմ խոսում AAA խաղերի մասին, որի վրա հազարներով մարդիկ են աշխատում, բայց են փոքր ու ապշեցնող ինդիների մասին, որ մարկետը գրավում են ու պարզվում ա երեք հոգով են սարքել։ Մենք ունենք համապատասխան մասնագետներ, լիքը ծրագրավորող, լիքը արտիս, մաթեմատիկ ու ստեղծարարներ։ Հնչյունային օպերատորներ ջան ձեր մասին չեմ մոռացել, դուք հրաշք եք~~~ Հետ գալով հայաֆիկացման խնդրին, ուզում եմ նշել, որ երբ գրում էի անցած փոստը ինձ հազիվ էի զսպում անգլերեն եզրույթները չգործածել և ի վերջո պարտվեցի։ Իրականությունը են ա, որ էդ եզրույթների համար համապատասխան բառը չկա հայերենում ու էդ խնդիր ա։ Դրա համար կոչ եմ անում բոլոր հայ խաղերի դիզայներներին, կրիտիկներին և այլոց ավելի շատ հոդվածներ գրել խաղերի մասին հայերենով, որ լեզուն զարգանա ու մարդկանց խաղերի գրագիտությունը հետը։ Բերեմ մի բառի օրինակ որ հայերենում չկա ու շատ էի ուզում թարգմանել, բայց ցավոք համապատասխան փորձառությունը թարգմանելու չունեմ, իսկ ուղիղ թարգմանությունը շատ տարօրինակ ա հնչում։ Խոսքը գնում ա “joystick” բառի մասին։ Փոստը գրելուց հետո խնդրեցի Անիին որ Դավիթ Իսաջանյանից հարցնի ոնց ինքը էդ բառը կթարգմաներ, որովհետև պարոն Իսաջանյանը այժմ իրենց “Introduction to Translation” է դասավանդում ու ստացա լաւագույն պատասխանը որը կարելի էր ակնկալել։ Ուզում եմ կիսվեմ բոլորիդ հետ ու մի գուցե կարողանաք նույն մեթոդը կիրառել ձեր թարգմանությունների մեջ

Dear Ani, 

I would definitely choose to translate the word. A calque could be a good option, խինդաձող, ժպտաձող, ցնծաձող, but I am afraid these would create unnecessary (also, somewhat naughty) associations, and as a result, people would only ridicule the word. I would therefore choose a word that does not have the kind of connotations ձող has in ordinary language, and would opt for կայմ; i.e., the (stick-like) mast of a sailing boat: հեռակայմ, խաղակայմ, ժպտակայմ, կառակայմ (կառավարման կայն), etc. 

Let me know which one you like more! 

Yours, D. I.

Խաղակայմը շատ հաւես ա հնչում, միտքը հասցնում ա ու տարօրինակ չի։ Բայց սենց պետք ա անել ամեն ինչի համար։ Հիմա լիքը հետաքրքիր թեմաներ եմ սովորում համալսարանում, չեմ կարում կիսվեմ, որովհետև հայերեն եմ ուզում գրեմ ու դժվարանում եմ։ Հուսով եմ կապրեմ են ապագայում, որ կկարողանամ հայերենով հանգիստ մտքերս արտահայտեմ խաղերի մասին խոսալուց։

#մտքեր #խաղերիդիզայն #թարգմանություն

 
Read more...

from senpie-hy

Անցած ուրբաթ մեր համալսարանում մեկնարկեց խաղերի ջեմ պլյուսը ( անգլ.՝ game jam+ )։ Ով տեղեակ չի ինչ է խաղերի ջեմը ասեմ՝ խաղերի ջեմը սովորաբար երկու օր տևողությամբ միջոցառում է, որի ժամանակ տարբեր հեռանկարի մարդիկ հավաքվում են խաղ ստեղծելու նպատակով։ Կարևոր է նշել, որ խաղը պարտադիր չի լինի թվային ( սակայն ցանկալի է ), այլ կարելի է ստեղծել սեղանի, մտովի և ցանկացած այլ տիպի խաղ, այդ թվում նաև կենդանի գործողություններով դերախաղեր ( անգլ.՝ live action role playing game ):

Օր զրո

Ջեմը սկսեց ժամը վեցին, երբ հայտատարեցին թեմաները։ Այս անգամ մրցում էինք երեք կատեգորայում՝ ոչ ծաղիկ ոչ մոլորակ ( անգլ.՝ No Plant no Planet ), վերմակ ու ջոյստիկ ( անգլ.՝ A blanket and joystick ), վերանայել կլասիկաները ( անգ.՝ Rethink the classics ), ուրախ ժամանակ անցկանցել ( անգլ.՝ Having fun Casually ), հիմնված իրական դեպքերի վրա ( անգլ.՝ Based on real events ): Ամբողջ օրը ծախսեցինք մտքի վրա աշխատելով։ Ընտրեցինք իմ միտքը, որը շներին կերակրելու մասին էր։ Ես միտքը կտեղավորեի «ուրախ ժամանակ անցկացնել» կատեգորիայի մեջ, սակայն որոշեցինք ասել որ վերանայում ենք կլասիկաները, կլասիկան լինելով Risk of Rain 2-ը։

Risk of Rain 2: Gameplay shot > Լուսանկար Risk or Rain 2 խաղից

Մտքի նկարագրությունը

Խաղը տեղի էի ունենում փոքր թաղամասում, որտեղ խաղացողին վարձել են շներին ման տալու համար։ Ման տալու ընթացքում բոլոր շները փախնում են ու սկսում են վազել քարտեզի տաբեր կողմերով, և պետք է շներից մի քանիսին հավաքել մինչև ժամանակի ավարտը, թե չէ աշխատանքից կհեռացնեն։ Խաղը իրենով երրորդ դեմքից կրակոցի է ( անգլ.՝ third person shooter ), որտեղ խաղացողը կրակում է ուտելիք շների վրա և երբ շան սովածության մակարդակը նվազում է զրոյի, նա հեզանում է և միանում խաղացողին վզակապով։ Հակրավոր է նշել, որ խաղը ունի շատ արագ ընթացք Doom Eternal-ի նման, որտեղ ճարպիկորեն պետք է շարժվել քարտեզի տարբեր մասերով և ճշգրիտ շարժումներով «կերակրել» շանը։ Խաղը ունի երեք դժվարություններ։ Առաջին, քարտեզում կան սկյուռիկներ և կատուները, որոնք փորձելու են խանգարեն խաղացողին տարբեր կերպով ժամանակը սպառելու համար։ Երբ շները կապված ենք խաղացողին, նրանք տարբեր ինտեռվալներով փորձելու են քաշեն խաղացողին դեպի իրենց կողմ, խանգարելով խաղացողին նշան բռնել և տեղաշարժվել, հարկավոր է նշել որ ինչքան շատ շուն այդքան ավելի դժվար է լինելու տեղաշարժվել։ Եվ երրոդ շները ունեն սովոծանալու հատկություն, այսինքն եթե երկար ման գաք նույն շներով, իրեքն սովոծանալու են ու էլի փախչեն։ Սակայն շներին հավաքելը ունի երկու լավ կողմ, առաջին հավաքելով տարբեր տեսակի շներ, ստանում եք տարբեր տեսակի առավելությունները ( անգլ.` buff ), օրինակ հավելյալ արագություն, կամ ավելի արագ տեմպով կերակրելու ձևեր։Նաև որոշ քանակի շներ հավաքելուց հետո, հայտնվում է հիմնական թիրախը ( չգիտեմ ոնց թարքմանեմ boss-ը այս կոնտեքստում ), որ շաաաատ մեծ ու շաաատ սոված շուն է։ Իրան կերակրելուց հետո դուք հաղթում եք։

Օր առաջին

Թմում վեց հոգի էինք։ Երեք հոգի ծրագրավորող, մեկ հարթակի դիզայներ ( անգլ.՝ level designer ), մեկ արտիստ և մի հոգի ով սկսնակ էր և փորձում էր ամեն ինչում օգնել։ Ինձ որոշեցին նշանակել, որպես lead programmer, որ համար շատ զխճում եմ, քանի որ ավելի շատ զբաղված էի մյուս ծրագրավորողներին տարբեր բաներ բացատրելով և գործերը մարդկանց մեջ բաժանելով։ Ես պետք է գրեի «ոչ խաղացող կերպարների»(անգլ.՝ Non Player Character)՝ այս դեպքում շների ,կատուների և սկյուռիկների արհեստական բանականությունը և պահվածքը, որի վրա ես ցավոք չհասցրեցի շատ աշխատել։ Որպես շարժիչ (անգլ.՝ Game Engine) որոշեցինք օգտագործել Godot-ը, որը շատ հարմար է փոքր և միջին չափի խաղեր ստեղծելու համար։ Բանականության համար գրում էի օգուտի վրա հիմնված բանականություն (անգլ.` utilty-based AI )։ Գաղափարը պարզ է և շատ էֆեկտիվ է խաղերի մեջ։ Մի քանի բառով, կերպարներին տալիս եմ մի քանի հնարավոր գործողություն, անիմաստ վազել, փախնել խաղացողից, կծել կամ ուրիշ բաներ, և ամեն մեկին տալիս եմ փոփոխական արժեք։ Ապա, կախված որ գործողությունն է տվյալ պահին ավելի արժեքավոր, կերպարը անում է կոնկրետ բան։ Ասենք եթե հեռու է խաղացողից ապա անիմաստ կվազի քարտեզով, եթե խաղացողը մոտիկանա, կփորձի փախնել և այլն։ Օրվա վերջում արդեն ունեինք մի քանի աշխատող բան որոնք պատրաստել էինք տարբեր համակարգիչների վրա և պետք է հավաքեինք իրար գլխի։

Վերջին Օր

Երկրորդ օրը արդեն կիսաքնած էինք, բայց լիքը գործ արեցինք։ Առաջին հերթին սկսեցինք բոլորի արած գործերի մի պռոյեկտի մեջ ավելացնել, որը բերեց լիքը կոնֆլիկտների, խոսքը գնում է գիթ ( անգլ.՝ git ) կոնֆլիկտների մասին։ Կոնֆլիկտները ուղղելուց շատ ժամանակ չէր մնացել, ու գնացինք խաղը ցուցադրելու վրա։ Իհարկե ոչմի տեղ չշահեցինք քանի-որ խաղը շատ կիսատ վիճակում էր և հիմնական գեյփլեյից ոչ մի հատկանշական բան դեռ չկար, բայց մենք շատ հավես ժամանակ անցկացրեցինք, իսկ ես լիքը բան սովորեցի գոդոտից և մարդկանց առաջնորդելու մասին։ Խաղը դրած է itch.io-ի էջում Hounded: Նաև կցեմ եմ փոքր հոլովակ խաղից

Hounded: gameplay

 
Read more...

from Unai's 100 Game Dev

Unai's First Post: THIS IS A DRILL

01101000 01110100 01110100 01110000 01110011 00111010 00101111 00101111 01110111 01110111 01110111 00101110 01111001 01101111 01110101 01110100 01110101 01100010 01100101 00101110 01100011 01101111 01101101 00101111 01110111 01100001 01110100 01100011 01101000 00111111 01110110 00111101 01100100 01010001 01110111 00110100 01110111 00111001 01010111 01100111 01011000 01100011 01010001

 
Leer más...