Cherreads

Chapter 24 - Chapter 24: Nostalgia

Jack revved his bike, the engine rumbling as Richard followed behind. The two of them exited the mansion gates, weaving through the morning traffic of Marawi City.

Their destination—a small print shop nestled between rows of local businesses.

As they parked outside, they were greeted by a young Muslim woman, her headscarf neatly wrapped, standing behind the shop counter.

"Good morning, sir," she said politely.

Jack stepped forward, phone in hand. "How much per page?"

She gestured toward a price list. "Three pesos per page for black and white, and ten pesos per page for colored."

Richard raised a brow. "Bro, you're printing a poster… using regular paper?"

Jack shrugged. "I just wanna try it first. If the quality isn't good enough, we might have to head to Iligan City to print them on cardstock and maybe look for an acrylic signage maker while we're there."

Richard sighed in relief. "Oh, alright. That makes sense."

Jack turned back to the woman. "Just three pages for now."

He quickly sent three gaming artwork files to the shop's computer via Bluetooth. The printer hummed to life, and within minutes, the woman handed over the three freshly printed colored posters.

Jack pulled out a ₱50 bill, took the prints, and waited for his ₱20 change before stepping outside. He held one up against the sunlight, frowning.

"…Hmmm. The resolution's too low."

Richard leaned in. The colors were dull, the details blurry—far from the high-quality posters they needed.

"I guess we have to go again, huh?" Richard said, already knowing the answer.

Jack exhaled, running a hand through his hair. "Yeah…"

Richard thought for a moment. "Bro, why don't we just place an order online? There are plenty of shops that offer delivery and installation for signage. And as for the posters, I'm sure there's a print shop somewhere in the city that can do cardstock prints. We just need to find it."

Jack sighed, clearly weighing his options. "Fine. I'm tired of driving two hours back and forth anyway."

Then, he shot Richard a look. "Speaking of which—won't you ever learn how to drive a car?"

Richard smirked. "I do know how to drive."

Jack's eyes widened. "Wait, what?! Then why the hell am I doing all the driving?!"

Richard shrugged. "You never asked."

Jack groaned, shaking his head. "Bro, I could've made you drive at least half the trip! That's eight hours of my life wasted!"

Richard chuckled, stepping toward his bike. "Well… now you know."

Jack muttered something under his breath before revving his DT bike.

"Come on. Let's find a proper print shop," he said.

Richard followed suit, engines roaring to life as they sped off to hunt for quality prints.

After an hour and a half of driving, Jack and Richard finally arrived back at the mansion.

Jack veered off toward the worker's dorm, stepping inside briefly to hand over the labor pay for the painters. The workers, still wiping their hands clean of paint, nodded in gratitude.

With that done, he made his way toward the garage basement, where Richard was already parking his bike.

Jack turned off his engine, hopped off, and immediately checked the stack of laminated cardstock posters they had printed. He ran his fingers over the glossy surface, admiring the sharp details.

A grin spread across his face. "These look sick, bro."

Richard grabbed half of the posters, flipping through them. "Yeah. This is way better than regular paper."

Jack stepped back, scanning the office walls. "Now all we need is some plants."

Richard sighed, already anticipating the hassle. "We'll have to ask the gardeners which plants don't need sunlight. Also, are you okay with our floors getting wet every time we water them?"

Jack scratched his head, thinking. "…Damn, good point."

Richard smirked. "Why not just grab one of those plastic plants from the living room or guest rooms? No watering, no maintenance."

Jack snapped his fingers. "Genius. Fake plants it is."

With that settled, Jack clapped his hands together. "Okay, next—we need a signage."

He then turned to Richard, smirking. "Oh, and one more thing…"

Before Richard could react, Jack pulled out his phone, switched to selfie mode, and snapped a picture of both of them.

"Dude, what the hell?" Richard blinked.

Jack grinned, holding up his phone. "We need our picture as the studio's owners."

Richard just shook his head, suppressing a chuckle. "At least give me a damn heads-up next time."

Jack stepped inside the freshly painted office, the faint scent of drying paint and laminate still lingering in the air. He made his way to the desk where a pair of scissors lay, picking them up with one hand while grabbing a roll of double-sided tape with the other.

"Alright, let's get these up," he said, cutting strips of tape with quick, precise movements.

Richard was already holding one of the laminated posters, his eyes scanning the vibrant gaming artwork they had printed. He ran his fingers over the glossy surface, appreciating the high-quality finish.

"You sure about this layout?" he asked, eyeing Jack as he peeled off the tape's backing.

Jack smirked. "Hell yeah. A diamond formation for the FPS games—makes it stand out. Then we can separate other genres into their own clusters."

Richard nodded. "Alright, let's do it."

They worked in perfect sync, sticking the Call of Duty, Counter-Strike, and Point Blank posters together to form a bold diamond shape on the wall. Each image flowed seamlessly into the next, showcasing intense firefights, soldiers in tactical gear, and iconic game logos.

Next, they arranged MMORPG, sci-fi, and strategy game posters, grouping them into distinct sections. The Ragnarok Online, EVE Online, and Sins of a Solar Empire posters dominated one corner, while the Warcraft and Dota images filled another.

As the final poster was pressed against the wall, Jack took a step back, his hands on his hips. He let out a slow, appreciative whistle.

"Now that's some next-level shit," he said, grinning.

Richard crossed his arms, scanning the room. The studio finally looked like a real game development space. "Yeah. Even though it's just the two of us for now, this is the first step in our company's future history."

Jack smirked and slapped Richard's back, making him stumble forward slightly. "Dude, you sound like a fucking corporate executive." He chuckled. "But yeah, can't argue with that."

Jack stretched, rolling his shoulders. "Alright, I still gotta find a signage maker online. I'll check Facebook first, see if there are any custom signage shops nearby. If we're lucky, we won't have to travel too far."

Richard nodded, already heading toward his desk setup. "I'll keep working on Vector Core. Just remind me when you're about to eat. If I start coding, I'll probably lose track of time."

Jack shook his head with a laugh. "No worries, bro. If you're still zoned out when I'm eating, I'll give you a good slap to wake you up."

Richard chuckled as he sat down, powering on his PC. Jack followed, waking his dual monitors from sleep mode. The soft glow of their RGB setups filled the office, their reflections shimmering faintly against the laminated posters.

With their workspace coming together, the real work was just beginning.

Richard settled into his chair, the hum of his PC fans filling the quiet space. He cracked his knuckles, opened his IDE, and created a new file:

RenderingCore.cpp

"The visual heart of the engine. The bridge between the abstract world of data and the tangible world of pixels."

He stared at the blank file for a moment, then his fingers snapped into motion, tapping across the keyboard in rapid succession.

An abstraction layer… a shield against the complexities of graphics APIs. OpenGL first, then Vulkan, then DirectX… but one step at a time.

He started defining the RenderDevice interface—the foundation for every rendering backend the engine would support.

// RenderDevice.h

class RenderDevice {

public:

 virtual void Init() = 0;

 virtual void CreateBuffer() = 0;

 virtual void CompileShader() = 0;

 virtual void LoadTexture() = 0;

 virtual void RenderFrame() = 0;

};

"Create buffers, shaders, textures… the basics. But those basics? They're deceptively complex."

Richard paused, closing his eyes for a second to visualize the rendering pipeline—the intricate data flow from CPU to GPU.

Vertex Data – Defining the shapes.

Index Data – Optimizing how they connect.

Uniform Data – Sending dynamic parameters.

Shaders – Transforming data into pixels.

Textures – Adding detail and realism.

His fingers resumed their machine-gun-like typing, constructing the foundation of his graphics engine.

Time blurred.

Two Hours Later

The first draft of the OpenGLRenderDevice class was taking shape.

"Creating a context, initializing extensions, setting up the viewport… it's a labyrinth of API calls."

// OpenGLRenderDevice.cpp

class OpenGLRenderDevice : public RenderDevice {

public:

 void Init() override {

 // Initialize OpenGL context

 glewInit();

 glViewport(0, 0, screenWidth, screenHeight);

 }

 void CreateBuffer() override {

 // Generate and bind buffer

 glGenBuffers(1, &bufferID);

 glBindBuffer(GL_ARRAY_BUFFER, bufferID);

 }

 void CompileShader() override {

 // Load and compile shader program

 }

 void LoadTexture() override {

 // Load texture and set parameters

 }

 void RenderFrame() override {

 // Clear screen and draw frame

 }

};

Another hour passed before he even realized it.

Then—a nudge.

"Oi, time traveler."

Richard blinked, turning to see Jack standing beside him, arms crossed.

Jack smirked. "Come on, man. It's past 12—almost 1 PM. Let's grab some lunch before you start coding your way into another dimension."

Richard exhaled, rubbing his eyes. He glanced at the clock on his screen.

12:53 PM.

Shit. I really did lose track of time.

He saved his work, pushed back his chair, and stood.

"Alright, alright. Let's eat."

Jack chuckled. "Good. Maybe food will stop you from turning into an AI yourself."

Richard smirked, following Jack toward the exit.

More Chapters